首页 > 编程 > PHP > 正文

php编译openssl模块的步骤

2020-03-22 19:21:49
字体:
来源:转载
供稿:网友
  • 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

    PHP编程

    郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

  • 发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表