php编译openssl模块的步骤
最近我们打算在php框架中使用composer来管理依赖关系,但是在执行composer的安装命令时(如下),发现系统提示没有安装openssl扩展类库。
安装composer命令:
sudocurl -s https://getcomposer.org/installer | sudo php
异常如下:
Some settings onyour machine make Composer unable to work properly. Make sure thatyou fix the issues listed below and run this script again: The opensslextension is missing, which means that secure HTTPS transfers areimpossible. If possible youshould enable it or recompile php with --with-openssl |
看到这个异常,应该是我的php在编译的过程中没有增加-with-openssl选项造成的。但是在网上搜索相关问题时,发现我们不需要重新编译php环境,可以借助phpize来只编译openssl.so文件,并把该文件添加到php.ini文件中的。
1.环境
1)操作系统:
Linuxubuntu 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014x86_64 x86_64 x86_64 GNU/Linux
2)php源码目录:
/home/wuguowei/software/php-5.5.14_source
3)php编译后的目录:
/home/wuguowei/software/php5.5
2.步骤
#从源码目录拷贝openssl目录到编译后的目录文件中
sudocp -r /home/wuguowei/software/php-5.5.14_source/ext/openssl /home/wuguowei/software/php5.5/include/php/ext
#进入php编译后的目标文件中
cd/home/wuguowei/software/php5.5/include/php/ext
#依次执行如下代码
/home/wuguowei/software/php5.5/bin/phpize
./configure--with-openssl?with-php-config=/home/wuguowei/software/php5.5/bin/php-config
make&& make install
#找到php.ini文件(通常在/etc/php.in)中的“DynamicExtensions”的内容,在末尾添加上“extension= openssl.so”
#重启php服务器即可
#查看编译后的openssl的方法
php-i |grep 'openssl'
正确的结果如下:
root@ubuntu:/home/wuguowei/software/composer#php -i |grep openssl openssl OLDPWD=> /home/wuguowei/software/php5.5/include/php/ext/openssl _SERVER["OLDPWD"]=> /home/wuguowei/software/php5.5/include/php/ext/openssl |
#查看php命令在哪儿的命令
whereis php
which php
下一篇: java责任链模式
推荐阅读
-
正确理解PHP程序编译时的错误信息_PHP教程
-
Linux环境下搭建php开发环境的操作步骤
-
使用Zend Studio开发php应用程序的开始步骤
-
php脚本生成google play url的下载链接,下载apk并自动反编译后获取android版本号
-
PHP7在linux下的安装步骤
-
Windows 下编译PHP生成的文件里没有php5apache2_2.dll
-
PHP4.1.0在Windows下的Apache模块方式安装_PHP
-
PHP编译安装中遇到的两个错误和解决方法_PHP
-
用windows下编译过的eAccelerator for PHP 516实现php加速的使用方法
-
PHP5安装GD库的具体操作步骤_PHP教程