CentOS 7 编译安装PHP7

编译安装

系统版本CentOS V7.6

PHP V7.3.3

#yum安装PHP编译时的依赖库

shell>yum install libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel net-snmp net-snmp-devel openssl openssl-devel libcurl libcurl-devel

#创建PHP用户用户组(PHP用户没有登录权限)

shell>groupadd -r PHP && useradd -r -g PHP -s /bin/false -d /usr/local/PHP -M PHP

#下载PHP主程序

shell>wget -c -P /opt/tmp/ http://ee1.php.net/distributions/php-7.3.3.tar.gz

#进入目录并解压缩

shell>cd /opt/tmp

shell>tar zxvf PHP-7.3.3.tar.gz

shell>cd PHP-7.3.3

#配置PHP并编译安装

shell>./configure \

--prefix=/usr/local/PHP \

--enable-bcmath \

--enable-mbstring \

--enable-sockets \

--enable-ctype \

--enable-opcache \

--enable-fpm \

--enable-MysqLnd \

--with-gd \

--with-png-dir \

--with-jpeg-dir \

--with-freetype-dir \

--with-libxml-dir \

--with-gettext \

--with-snmp \

--with-openssl-dir \

--with-curl \

--with-fpm-user=Nginx \

--with-fpm-group=Nginx \

--with-MysqLi=MysqLnd \

--with-pdo-MysqL=MysqLnd \

--with-MysqL-sock=/var/lib/MysqL/MysqL.sock \

--without-pear \

--disable-phar

shell>make -j 4

shell>make install

#下载pear.phar并安装

shell>wget  http://pear.PHP.net/go-pear.phar

shell>/usr/local/PHP/bin/PHP go-pear.phar

#查看编译成功后的PHP安装目录(需要确保至少存在MysqLi.so、pdo_MysqL.so这两个动态库文件)

shell>ls -lrt /usr/local/PHP/lib/PHP/extensions/no-debug-non-zts-20180731

#设置PHP7的配置文件跟脚本PHP.ini、PHP-fpm.conf、www.conf、PHP-fpm

shell>cp -rv PHP.ini-production /usr/local/PHP/etc/PHP.ini

shell>cp -rv /usr/local/PHP/etc/PHP-fpm.conf.default /usr/local/PHP/etc/PHP-fpm.conf

shell>cp -rv /usr/local/PHP/etc/PHP-fpm.d/www.conf.default /usr/local/PHP/etc/PHP-fpm.d/www.conf

shell>cp -R ./sapi/fpm/init.d.PHP-fpm /etc/init.d/PHP-fpm

#添加PHP7的环境变量

shell>echo -e '\nexport PATH=/usr/local/PHP/bin:/usr/local/PHP/sbin:$PATH\n' >> /etc/profile && source /etc/profile

#设置PHP日志目录和PHP-fpm的运行进程ID文件PHP-fpm.sock)目录

shell>mkdir -p /var/log/PHP-fpm/ && mkdir -p /var/run/PHP-fpm && cd /var/run/ && chown -R Nginx:Nginx PHP-fpm

#修改session的目录配置

shell>mkdir -p /var/lib/PHP/session && chown -R Nginx:Nginx /var/lib/PHP

#配置开机自启动,增加到主机sysV服务

shell>chmod +x /etc/init.d/PHP-fpm

shell>chkconfig --add PHP-fpm

shell>chkconfig PHP-fpm on

#测试PHP配置文件是否正确合法

shell>PHP-fpm -t

#启动PHP服务

shell>service PHP-fpm start

#查看PHP-FPM进程

shell>ps -aux|grep PHP-fpm

#查看PHP7版本信息

shell>PHP -v

#PHPNginx整合

进入到Nginx配置文件修改

在localtion中增加index.PHP

location / {

            root   html;

            index  index.html index.htmi index.PHP;

        }

在location~\.PHP$去掉全部注释并更改$document_root

 location ~ \.PHP$ {

            root           html;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.PHP;

            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

            include        fastcgi_params;

        }

保存后退出

在网站根目录下编写PHP测试文件

vim index.PHP

<?PHP

echo PHPinfo();

?>

保存退出并重启Nginx服务器

注意!!!测试完毕后删除文件

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...