服务器架设后通常不开启openssl,导致很多功能无法使用。php怎样开启openssl呢?
一、Windows系统开启openssl方法:
1.检查对应版本中php.ini文件里;extension=php_openssl.dll是否存在,如果存在的话去掉前面的注释符‘;’,如果不存在这行,那么添加extension=php_openssl.dll。
2.将对应php文件夹下的php_openssl.dll、ssleay32.dll、libeay32.dll三个文件拷贝到C盘系统目录WINDOWS\system32\文件夹下,如果这次dll文件已经存在,便可直接覆盖。
3.重启apache或者iis
此时,php开启openssl就完成了。
二、Linux系统下开启方法:
本人测试使用的是锦尚数据的云主机,PHP版本为5.2.14
下面就以我的主机为例讲解为PHP添加openssl模块支持。
网上一些朋友说要重新编译PHP,添加configure参数,增加openssl的支持,这里讲一个不需要重新编译的方法。
如果服务器上存在PHP安装包文件最好,如果已经删除,去下载和phpinfo页面显示版本一样的PHP安装文件,我这里是php-5.2.14.tar.gz
推荐去搜狐镜像下载,网易镜像没有找到。地址为:http://mirrors.sohu.com/php/
用ssh工具连接到主机。
#下载到/var/www/php5目录下
cd/var/www/php5
wgethttp://mirrors.sohu.com/php/php-5.2.14.tar.gz
#解压
tarzxvfphp-5.2.14.tar.gz
#进入PHP的openssl扩展模块目录
cdphp-5.2.14/ext/openssl/
/var/www/php5/bin/phpize#这里为你自己的phpize路径,如果找不到,使用whereisphpize查找
#执行后,发现错误无法找到config.m4,config0.m4就是config.m4。直接重命名
mvconfig0.m4config.m4
/var/www/php5/bin/phpize
./configure--with-openssl--with-php-config=/var/www/php5/bin/php-config
make
makeinstall
#安装完成后,会返回一个.so文件(openssl.so)的目录。在此目录下把openssl.so文件拷贝到你在php.ini中指定的extension_dir下(在php.ini文件中查找:extension_dir=),我这里的目录是
var/www/php5/lib/php/extensions
#编辑php.ini文件,在文件最后添加
extension=openssl.so
#重启Apache即可
/usr/local/apache2/bin/apachectlrestart
此时,Linux系统也成功添加openssl支持了。
三、AppServ Win32如何打开openssl
1.打开c:/windows,里面有一个php.ini文件,然后在里面搜索 ;extension=php_openssl.dll ,把前面的逗号去掉。
2.进入AppServ的安装目录,到php文件夹里面,分别搜索 libeay32.dll 和 ssleay32.dll ,把它们复制到 c:/windows/system32 下面
3.重新启动 Apache,就可以了。