阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 6.3 x64 PHP 5.2.6 扩展安装OpenSSL出错的解决方法

139次阅读
没有评论

共计 2132 个字符,预计需要花费 6 分钟才能阅读完成。

以前编译 php 没有 –with–openssl 现在要使用到 openssl,phpinze 扩展安装,但是在 make 时候报错

今天找这个在网上找了大半天,最后总结应该是 php 版本本身的问题,错误是 php 编译好后,通过 phpize 单独添加时候报错的内容

推荐阅读:

生产环境实用之 LNMP 架构的编译安装 +SSL 加密实现 http://www.linuxidc.com/Linux/2013-05/85099.htm

LNMP 全功能编译安装 for CentOS 6.3 笔记 http://www.linuxidc.com/Linux/2013-05/83788.htm

CentOS 6.3 安装 LNMP (PHP 5.4,MyySQL5.6) http://www.linuxidc.com/Linux/2013-04/82069.htm

在部署 LNMP 的时候遇到 Nginx 启动失败的 2 个问题 http://www.linuxidc.com/Linux/2013-03/81120.htm

Ubuntu 安装 Nginx php5-fpm MySQL(LNMP 环境搭建) http://www.linuxidc.com/Linux/2012-10/72458.htm

《细说 PHP》高清扫描 PDF+ 光盘源码 + 全套教学视频 http://www.linuxidc.com/Linux/2014-03/97536.htm

问题
/usr/local/src/php-5.2.6/ext/openssl/openssl.c:229: error: expected specifier-qualifier-list before‘LHASH’
/usr/local/src/php-5.2.6/ext/openssl/openssl.c:410: error: expected declaration specifiers or‘…’before‘LHASH’
/usr/local/src/php-5.2.6/ext/openssl/openssl.c: In function‘php_openssl_config_check_syntax’:
    /usr/local/src/php-5.2.6/ext/openssl/openssl.c:416: error:‘config’undeclared (first use in this function)
    /usr/local/src/php-5.2.6/ext/openssl/openssl.c:416: error: (Each undeclared identifier is reported only once
    /usr/local/src/php-5.2.6/ext/openssl/openssl.c:416: error: for each function it appears in.)
    /usr/local/src/php-5.2.6/ext/openssl/openssl.c: In function‘add_oid_section’:
    /usr/local/src/php-5.2.6/ext/openssl/openssl.c:435: error:’struct php_x509_request’has no member named‘req_config’
/usr/local/src/php-5.2.6/ext/openssl/openssl.c:439: error:’struct php_x509_request’has no member named‘req_config’

解决思路

php5.2.5
 php5.2.6
 php5.2.8
php5.3.0

php 安装好后在独立安装 openssl 扩展会有问题,推荐使用 php5.2.17
 wget http://museum.php.net/php5/php-5.2.17.tar.gz

这个是经过测试的出来的结果

安装过程
# 下面是 php 的安装目录
/usr/local/php5/bin/ 

  #切换到 php 安装目录的 etx/openssl 目录
cd /php-5.2.17/ext/openssl 

  #查看 openssl 目录下有个 config0.m4,把 config0.m4 改名为 config.m4。
cp config0.m4 config.m4 

  #依次执行:
    /usr/local/php5/bin/phpize 

  ./configure –with-openssl –with-php-config=/usr/local/php5/bin/php-config 

  make && make install 

  #然后找到 php.ini 所在位置 打开 extension_dir(如果没有则自行添加), 同时添加 extension =“openssl.so”

# 重启服务器 即可 

#openssl 查看方法:
    /usr/local/php5/bin/php -m |grep openssl

OpenSSL 的详细介绍 :请点这里
OpenSSL 的下载地址 :请点这里

更多 CentOS 相关信息见 CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计2132字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中