Php支持ssl,ssh扩展:

准备:可以成功解析php

1.curl的安装

[root@localhost~]# cd /usr/local/src/

[root@localhost~]# wget https://curl.haxx.se/download/curl-7.47.1.tar.gz

[root@localhost~]# tar zxvf curl-7.47.1.tar.gz

[root@localhost~]# cd curl-7.47.1

[root@localhost~]# ./configure --with-ssl --with-libssh2

出现:configure: error: libSSH2 libs and/or directories were not found where specified!

[root@localhost ]# yum install libssh2 libssh2-devel

[root@localhost~]# ./configure --with-ssl --with-libssh2

curl version:     7.47.1

Host setup:       x86_64-pc-linux-gnu

Install prefix:   /usr/local

Compiler:         gcc

SSL support:      enabled (OpenSSL)

SSH support:      enabled (libSSH2)

至此ssl,ssh已经使能了。

lamp的php安装:

[root@localhost~]# cd php-5.1.14

[root@localhost~]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6 --with-curl --with-openssl --with-zlib-dir --enable-ftp

[root@localhost~]# make

如果出现 [sapi/cli/php]错误

执行:

[root@localhost~]# make ZEND_EXTRA_LIBS='-liconv'

[root@localhost~]# ln -s /usr/local/lib/libiconv.so.2 /usr/lib64/

[root@localhost~]# make install

[root@localhost~]# cp php.ini-production /usr/local/php/etc/php.ini

[root@localhost~]# vim /usr/local/php/etc/pnp.ini

去掉这行的注解并改成data.timezone = Asia/shanghai

安装libssh2库与ssh2

[root@localhost~]# cd /usr/local/src/

[root@localhost~]# wget http://www.libssh2.org/download/

[root@localhost~]# wget http://pecl.php.net/package/ssh2

[root@localhost~]# tar -zxvf libssh2-1.4.2.tar.gz

[root@localhost~]# cd libssh2-1.4.2

[root@localhost~]# ./configure --prefix=/usr/local/libssh2

[root@localhost~]# make && make install

[root@localhost~]# tar -zxvf ssh2-0.12.tgz

[root@localhost~]# cd ssh2-0.12

[root@localhost~]#./configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/libssh2 --with-php-config=/usr/local/php/bin/php-config

[root@localhost~]#make && make install

[root@localhost~]# cp modules/ssh2.so /usr/lib64/php/modules/

[root@localhost~]# vim /usr/local/php/etc/php.ini

添加一行:extension=ssh2.so

[root@localhost~]# /usr/local/php/sbin/php-fpm -i|grep ssh2

出现:下图内容则配置成功

[root@localhost~]# vim /data/www/3.php

<?php

$user="root";

$pass="li";

$connection=ssh2_connect('192.168.1.111',22);

ssh2_auth_password($connection,$user,$pass);

$cmd="ls";

$ret=ssh2_exec($connection,$cmd);

stream_set_blocking($ret, true);

echo (stream_get_contents($ret));

?>

[root@localhost~]# /usr/local/apache2/bin/apachectl restart

访问 http://192.168.1.106/3.php

即ssh执行成功!!!

可能出现的问题:

php版本与ssh扩展模块版本不匹配,需要更新版本。

lamp php的ssl,ssh支持的更多相关文章

  1. 服务器配置ssl证书支持苹果ATS方法

    服务器配置ssl证书支持苹果ATS方法 发布日期:2016-12-14 苹果安全工程&架构部门主管Ivan Kristic表示ATS将在今年底成为App Sotre app的必要条件,这将大幅 ...

  2. HTTPS笔记:使用 SSLEngine 为 aioserver 服务器提供 SSL 访问支持

    现在 HTTPS 的普及率是越来越高,闲来无事,花了二三天时间,为五年前写的 aioserver 服务器提供了 SSL 访问支持. 查看网上资料,为了提高服务器的高并发,建议使用:SSLEngine ...

  3. 开源基于asio的网络通信框架asio2,支持TCP,UDP,HTTP,RPC,SSL,跨平台,支持可靠UDP,支持TCP自动拆包,TCP数据报模式等

    开源基于asio的网络通信框架asio2,支持TCP,UDP,HTTP,RPC,SSL,跨平台,支持可靠UDP,支持TCP自动拆包,TCP数据报模式等 C++开发网络通信程序时用asio是个不错的选择 ...

  4. CentOS 使用 LAMP 环境开启 SSL 搭建 WordPress

    环境阿里云新装CentOS 7.4, 使用yum(非编译安装)搭建LAMP, CA证书为阿里云免费提供的, WordPress为官网下载 安装 LAMP 并开启 HTTPS 1, 关闭防火墙 # sy ...

  5. 手动添加SSH支持、使用c3p0

    之前做的笔记,现在整理一下:大家有耐心的跟着做就能成功: SSH(struts2.spring.hibernate) *  struts2      *  充当mvc的角色 *  hibernate ...

  6. SpringBoot配置SSL证书支持

    Spring Boot配置ssl证书 一.申请SSL证书 在各大云服务商都可以申请到SSL官方证书. 我这里是在阿里云上申请的,申请后下载,解压.如图:  二.用JDK中keytool是一个证书管理工 ...

  7. 关于apache 开启 ssl https 支持 TLS1.2 的些事

    项目背景 需要搭建一个小程序的服务器,当然要使用https协议服务器windows service 2012 r2,后台语言是php,服务集成环境装的是appserv2.5 ,apache2.2证书申 ...

  8. centeros 6 远程升级ssl ssh 的shell脚本

    变量说明 SSL_N=openssl-1.0.2p #ssl 版本SSH_N=openssh-7.9p1 #ssh 版本ZLIB_N=zlib-1.2.11 # zlib 版本 脚本分为两个,因为升级 ...

  9. 手动加入SSH支持、使用c3p0

    之前做的笔记,如今整理一下.大家有耐心的跟着做就能成功: SSH(struts2.spring.hibernate) *  struts2      *  充当mvc的角色 *  hibernate ...

随机推荐

  1. :before和 :after

    :before和:after的作用就是在指定的元素内容(而不是元素本身)之前或者之后插入一个包含content属性指定内容的行内元素,最基本的用法如下: #example:before { conte ...

  2. oracle计算两行差值

    Lag和Lead分析函数可以在同一次查询中取出同一字段的前N行的数据(Lag)和后N行的数据(Lead)作为独立的列. 这种操作可以代替表的自联接,并且LAG和LEAD有更高的效率. SELECT c ...

  3. 用浏览器模拟各种User Agent

    转至:http://www.cnblogs.com/top5/archive/2012/06/07/2540686.html 测试页面的时候经常需要不同的User Agent,Firefox.Chro ...

  4. html5 placeholder ie 不兼容问题 解决方案

    解决HTML5 placeholder的方案 来源:   时间:2013-09-05 20:06:49   阅读数:11375 分享到: 0 [导读] 使低版本浏览器支持Placeholder有很多方 ...

  5. SpringMVC无法获取请求中的参数的问题的调查与解决(2)

    由于Request的getInputSteam()一旦获取一次后,就再也无法获取了 在实际项目中导致下面的问题: 1,多个拦截器,Filter都需要从InputStream中拿数据的情况无法处理: 2 ...

  6. C# iis 错误配置信息( CS0016: 未能写入输出文件 )

    IIS发布时,编译器错误消息: CS0016: 未能写入输出文件 "c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.N ...

  7. WCF启用日志追踪

    调用使用http post调用WCF Restful服务时,WCF会自动反序列化body里的实体,如果实体反序列化不成功时,会返回一个请求错误,让去看服务器日志.需要启用日志追踪功能,才能看到具体的情 ...

  8. RHEL7/CentOS7中更改网卡默认名称

    1.重命名并修改网卡配置文件,将"NAME"参数更为我们熟悉的“eth*”,这里我将其改为"eth0" [root@localhost ~]# cd /etc/ ...

  9. Python内置函数总结

    1.abs() 取绝对值 1 2 3 4 >>> a = abs(-7) >>> b= abs(7) >>>print(a,b) 7 7 2.al ...

  10. ios 判断相册文件图片大小的方法

    ALAssetsLibrary* alLibrary = [[ALAssetsLibrary alloc] init]; [alLibrary assetForURL:[info objectForK ...