PHP编译步骤参考
1.从官网下载源码包,得到php-7.3.7.tar.bz2
2.创建编译目标路径
mkdir /app
3.安装相关包和包组
开发包组,如已安装可跳过包组
yum -y groupinstall "Development Tools"
安装相关包
yum -y install bzip2-devel libxml2-devel libmcrypt-devel
4.解压源码包,进入解压出的文件夹执行命令
./configure --prefix=/app/php \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-openssl \
--with-pdo-mysql=mysqlnd \
--enable-mbstring \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--enable-sockets \
--with-apxs2=/app/httpd/bin/apxs \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/etc/php.d \
--enable-maintainer-zts \
--disable-fileinfo && make -j 2 && make install
*如果是nignx 把--with-apxs2 选项换成 --enable-fpm
5.配置相关文件
复制PHP相关文件到目录
cp php.ini-production /etc/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
cp /app/php/etc/php-fpm.conf.default /app/php/etc/php-fpm.conf
cp /app/php/etc/php-fpm.d/www.conf.default /app/php/etc/php-fpm.d/www.conf
添加执行权限和开机启动
chmod +x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on
备份httpd配置文件
cp /app/httpd/conf/httpd.conf /app/httpd/conf/httpd.conf.bak
编辑http配置文件,加载代理和fcgi模块
sed -r -i 's/^#(.*mod_proxy\.so)$/\1/' /app/httpd/conf/httpd.conf
sed -r -i 's/^#(.*mod_proxy_fcgi.*)$/\1/' /app/httpd/conf/httpd.conf
添加php主页识别
sed -r -i 's/^(.* DirectoryIndex )(.*)$/\1index.php \2/' /app/httpd/conf/httpd.conf
在http配置文件中添加php页面识别和代理配置
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/data/www/$1