基于Linux操作系统PHP 5.6.40源码编译安装配置

主要讲解 CentOS 下(其他 Linux 环境类似…)编译安装 PHP 5.6.40(2022年5月23日发布),手把手从 0 到 1,教你如何编译安装 PHP 5.6.40。可能很多同鞋都会问到,PHP现如今版本都已经发布V7和V8了,为什么我还要写基于5.6.40版本的PHP安装配置,由于我们基于PHP研发的软件都要求基于ZendGuardLoader进行加密。关于如何使用ZendGuardLoader请自行百度。

PHP源码下载

根据实际需要下载对应的源代码即可。由于PHP官网在国外,不符合国内备案要求,无法在文章列出,请各位同鞋自行百度打开PHP官网直接下载对应的版本代码即可。

名称

版本

备注

Linux

CentOS 7.9.2009

操作系统升级至7系列最新版

PHP

PHP 5.6.40

基于PHP 5.6最终版本编译

安装依赖包

yum -y install gcc gcc-c++ make automake autoconf yum -y install libxml2-devel openssl-devel pcre-devel sqlite-devel bzip2-deve llibcurl-devel freetype-devel gd-devel readline-devel libmcrypt-devel libcurl-devel libxslt libxslt-devel

解压编译

./configure –prefix=/usr/local/php5 —with-config-file-path=/usr/local/php5/etc —with-config-file-scan-dir=/usr/local/php5/etc/php.d —with-curl=/usr/local/lib —with-freetype-dir=/usr/lib64 —with-gd —with-gettext —with-iconv-dir=/usr/local/lib —with-jpeg-dir=/usr/lib64 —with-kerberos —with-libdir=lib64 —with-libxml-dir=/usr/lib64 —with-mcrypt —with-mhash —with-mysql —with-mysqli —with-openssl —with-pcre-regex=/usr –with-pdo-mysql=shared –with-pdo-sqlite=shared –without-pear –with-png-dir=/usr/lib64 —with-xmlrpc —with-xsl —with-zlib –enable-fpm –enable-bcmath –enable-libxml –enable-inline-optimization –enable-gd-native-ttf –enable-mbregex –enable-mbstring –enable-opcache –enable-pcntl –enable-shmop –enable-soap –enable-sockets –enable-sysvsem –enable-xml –enable-zip –disable-rpath make && make install

配置php-fpm

#development与productoin二选一,如果你的服务器是开发测试环境,请选择development;如果你的服务器是在线生产环境,请选择production cp php.ini-development /usr/local/php/etc/php.ini cp php.ini-production /usr/local/php/etc/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm5.conf

配置php-fpm启动服务

#在/etc/systemd/system/目录下,新建php-fpm5.service文件,然后将此代码粘贴至此文件 #运行systemctl start php-fpm5.service如无任何错误信息输出即表示运行成功,可通过查看php进程方式检查,直接输入ps -aux | grep php-fpm #运行成功后,为避免服务器或系统出现重启,可将php-fpm服务加入至开机启动选项中,运行systemctl enable php-fpm5.service这样后续服务器或系统出现重启,都会自动启动php-fpm服务 [Unit] Description=The PHP FastCGI Process Manager After=syslog.target network.target [Service] Type=simple PIDFile=/var/run/php-fpm5.pid ExecStart=/usr/local/php5/sbin/php-fpm5 –nodaemonize –fpm-config /usr/local/php5/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID ExecStop=/bin/kill −INT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target

Zend Guard Loader组件的安装与配置

1.下载zend-loader文件,并解压

安装Zend Guard Loader的方式如下,各平台差别不大,这里以Ubuntu16.04做示范

cd /tmp wget http://downloads.zend.com/guard/7.0.0/zend-loader-php5.6-linux-x86_64_update1.tar.gz tar xvf zend-loader-php5.6-linux-x86_64_update1.tar.gz

2.将zend-loader加密模块直接拷贝到PHP模块扩展目录

#由于我的PHP是源码编译,所以PHP所有相关程序及配置文件统一在指定目录下。 #/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226 cp /tmp/zend-loader-php5.6-linux-x86_64/ZendGuardLoader.so /usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/

3.配置启用zend-loader加密模块,配置文件目录根据您的实际情况修改

[ZendGuardLoader] zend_extension=ZendGuardLoader.so zend_loader.enable=1 zend_loader.disable_licensing=0 zend_loader.obfuscation_level_support=3 zend_loader.license_path=

4、重启nginx及php-fpm服务并通过浏览器访问测试

systemctl nginx php-fpm5

打开浏览器,输入http://服务器IP地址,例如我的PHP测试服务器地址为:http://172.192.100.100

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片