1、安装依赖
yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
2、下载源码包
wget http://cn2.php.net/get/php-7.3.2.tar.gz/from/this/mirror
根据自己需求,下载相应的版本,这里选择7.3.2版本
3、解压源码包
tar -xzvf php-7.3.2.tar.gz
进入解压后的目录
cd php-7.3.2
4、预编译
./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --with-mysqli --with-pdo-mysql --with-gd --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-openssl --enable-mbstring --enable-fpm
编译参数可以自己设置,比如这里我指定/usr/local/php为安装目录,安装mysqli pdo-mysql gd库等模块。
5、编译并安装
make && make install
6、拷贝php配置文件
cp php.ini-production /usr/local/php/etc/php.ini
拷贝php-fpm服务并赋予执行权限
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
7、拷贝php-fpm进程服务的配置文件和扩展配置文件
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
8、设置php环境变量
vi /etc/profile.d/php.sh
export PATH=$PATH:/usr/local/php/bin/:/usr/local/php/sbin/
source /etc/profile.d/php.sh
9、启动php-fpm
service php-fpm start
10、设置php-fpm开机启动
chkconfig php-fpm on
11、配置nginx支持php
编辑php-fpm.conf,翻到php-fpm.conf最后一行,include的路径要对应于自己的安装目录
/usr/local/php/etc/php-fpm.d/www.conf 的user、group和nginx配置文件nginx.conf的user要对应
配置nginx的nginx.conf , 这两处地方修改为
location / {
root html;
index index.html index.htm index.php;
}
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;
}

本文详细介绍了如何在服务器上手动编译安装PHP7.3,包括安装依赖、下载源码、配置参数、编译安装、配置环境变量、启动php-fpm以及配置nginx支持PHP。
1247

被折叠的 条评论
为什么被折叠?



