ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

php添加openssl扩展

2021-05-20 08:02:21  阅读:158  来源: 互联网

标签:... openssl ext 添加 usr php local


第一步

找到与已安装php版本相同的源代码包,(使用 php --version 查看php版本)

如果之前有源代码包,直接解压,没有网上下载相同版本后再解压。

使用命令:tar -zxvf xxxx.tar.gz

第二步

进入解压后的目录,会看到一个 ext 的目录,进入该目录,其中有一个 openssl 目录,如下图所示

第三步

进入 openssl 目录,执行如下命令

[root@localhost openssl]# /usr/local/php/bin/phpize   //视自己的安装环境而定,找到自己已安装php中的phpize
 Cannot find config.m4.                               //提示找不到config.m4文件,执行如下mv操作
 Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module
[root@localhost openssl]# ls
config0.m4  config.w32  CREDITS  openssl.c  openssl.mak  php_openssl.h  README  tests  xp_ssl.c
[root@localhost openssl]# mv config0.m4 config.m4       //将目录中的config0.m4直接改名为config.m4
[root@localhost openssl]# /usr/local/php/bin/phpize     //再执行一次
Configuring for:
PHP Api Version:         20210520
Zend Module Api No:      20210520
Zend Extension Api No:   320210520

第四步

执行完上面的步骤后,会看到 openssl 目录中生成了 configure 文件,如下图

接着执行如下命令:

[root@localhost openssl]# ./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for cc... cc
checking for C compiler default output file name... a.out
 ...
 ...     //此处省略部分执行过程
   
 //configure完后,接着make编译,部分代码如下:
[root@localhost openssl]# make
/bin/sh /usr/src/lamp/php-7.1.9/ext/openssl/libtool --mode=compile cc  -I. -I/usr/src/lamp/php-7.1.9/ext/openssl -DPHP_ATOM_INC -I/usr/src/lamp/php-7.1.9/ext/openssl/include -I/usr/src/lamp/php-7.1.9/ext/openssl/main -I/usr/src/lamp/php-7.1.9/ext/openssl -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c /usr/src/lamp/php-7.1.9/ext/openssl/openssl.c -o openssl.lo
mkdir .libs
cc -I. -I/usr/src/lamp/php-7.1.9/ext/openssl -DP
...
...    //此处省略部分执行过程

//make编译过程完后,执行make install 安装过程
[root@localhost openssl]# make install
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20210520/    //生成的openssl.so文件的目录位置,视自己php环境而定

第五步

编辑 php.ini 文件

vim /usr/local/php/etc/php.ini
//开启extension_dir选项,并指定扩展文件存放目录
//配置文件中默认如下所示
;extension_dir='./'
//开启并配置如下所示
extension_dir='/usr/local/php/etc/extension'   //自己指定

如下图所示

第六步

将第四步中 openssl.so 文件拷贝到第五步中 extension_dir 指定的目录中(或者直接使用生成的地址),如下图所示

第七步

编辑 php.ini 文件,开启 openssl 扩展,在 php.ini 文件末尾添加如下代码

extension=openssl.so

保存并退出,重启 php-fpm,测试如下图所示表示成功

标签:...,openssl,ext,添加,usr,php,local
来源: https://www.cnblogs.com/niuben/p/14788349.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有