安装PHP
第一步,添加 epel 源。
# 在centos7系统上进行操作
命令:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm7
第二步,安装编译工具及库文件。
# 在centos7系统上进行操作
命令:
yum install bzip2 bzip2-devel bisonbison-devel cmake curl curl-devel e2fsprogs e2fsprogs-devel epel-releasefreetype freetype-devel gcc gcc-c++ glibc glibc-devel glib2 glib2-devel gmpgmp-devel krb5 krb5-devel libmcrypt libmcrypt-devel libxslt libxslt-devellibcurl libcurl-devel libedit-devel libjpeg libjpeg-devel libpng libpng-devellibxml2 libxml2-devel libidn libidn-devel libzip-devel mcrypt mhash-develncurses ncurses-devel openssl openssl-devel openssl-develsqlite-devel readlinereadline-devel sqlite-devel uuid libuuid-devel zlib zlib-devel
第三步,下载php-5.6.36。
下载网址:PHP: Releases
下载命令:wget https://www.php.net/releases/php-5.6.36.tar.gz
linux 目录: /usr/local/src
注:如果使用wget直接下载不成功,就下载到window上,然后使用sftp上传到linux上
第四步,解压及编译安装php-5.6.36。
1、解压php-5.6.36.tar.gz
目录:/usr/local/src
命令:
tar zxvf php-5.6.36.tar.gz
2、配置php
# 进入解压后的文件夹 /usr/local/src/php-5.6.36
命令:
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-fpm \
--with-openssl \
--with-mcrypt \
--enable-mbstring \
--enable-pdo \
--with-curl \
--disable-debug \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-pdo-mysql \
--with-mysqli \
--with-gd \
--with-jpeg-dir \
--with-freetype-dir \
--enable-calendar

若结果显示“Thankyou for using PHP.”,则说明PHP配置成功。
3、编译安装php
目录: /usr/local/src/php-5.6.36
make需要花费较长时间(可能需要几分钟到十几分钟),需要耐心等待一会
命令:
make && make install
若结果显示“Build complete. Don't forget to run'make test'.”,则说明PHP编译安装成功。

4、make test 测试
make test
make test 也许要一些时间,需要耐心等待一会
第五步,查看环境变量和php版本。
命令:
/usr/local/php/sbin/php-fpm -v
结果:
PHP 5.6.36 (fpm-fcgi) (built: Mar 13 2023 11:34:24)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
第六步,配置php-fpm。
进入目录:cd /usr/local/src/php-5.6.36/
执行命令:
cp php.ini-production /etc/php.ini
cp php.ini-production /usr/local/php/etc/php.ini
cd /usr/local/php/etc/
cp php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
第七步,编辑php-fpm.conf和php.ini文件。
1、编辑php-fpm.conf文件,
vim /usr/local/php/etc/php-fpm.conf

去掉pid前面的分号
配置pid
将
pid = run/php-fpm.pid
修改成
pid = /usr/local/php/var/run/php-fpm.pid
编辑/usr/local/php/etc/php.ini和/etc/php.ini文件
配置
vim /usr/local/php/etc/php.ini
vim /etc/php.ini
max_execution_time = 0
max_input_time = 600
post_max_size = 200M
upload_max_filesize = 200M
date.timezone = PRC
date.timezone 取消前面的分号
第八步,设置php-fpm开机启动。
1、复制init.d.php-fpm到/etc/init.d/php-fpm
cd /usr/local/src/php-5.6.36/sapi/fpm/
cp init.d.php-fpm /etc/init.d/php-fpm
2、为php-fpm添加执行权限
chmod +x /etc/init.d/php-fpm
3、设置开机启动
chkconfig php-fpm on
第九步,配置nginx支持php。
1、编辑nginx.conf
vim /etc/nginx/nginx.conf文件,做出如下修改:
server {
listen 80;
server_name localhost;
location / {
# 修改html路径
root /usr/local/nginx/html;
# 添加index.php
index index.html index.htm index.php;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
# 修改html路径
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}
}
注意标红的部分:
# 添加index.php
index index.html index.htm index.php;
2、重启nginx
/usr/local/nginx/sbin/nginx -s reload
第十步,启动php-fpm。
启动php-fpm
进入目录: cd /usr/local/php/sbin/
service php-fpm start
启动命令:service php-fpm start
或 /etc/init.d/php-fpm start

若结果显示
ERROR: [pool www] cannot get uid for user 'nginx'
[13-Mar-2023 14:07:02] ERROR: FPM initialization failed
failed
则需要使用命令“useradd nginx”添加用户nginx。
然后重新启动php-fpm。
看到如下字样即成功:
Starting php-fpm done
2、关闭php-fpm
service php-fpm stop
或 /etc/init.d/php-fpm stop
3、 重启php-fpm
service php-fpm restart
或 /etc/init.d/php-fpm restart
第十一步,查看php-fpm是否启动成功。
命令:lsof -i:9000

lsof -i:80

看到如上信息即表示成功
第十二步,在/usr/local/nginx/html下创建phpinfo.php文件。
1、在/usr/share/nginx/html/phpinfo.php中写入下面的代码:
<?php
phpinfo();
?>
2、访问http://x.x.x.x/phpinfo.php
若页面出现“PHP Version 5.6.36”等信息,则说明PHP配置成功。

第十三步,测试PHP和MySQL关联。
在文件夹/usr/local/nginx/html中新建test.php脚本,
向该脚本中写入PHP测试连接数据库的代码,代码如下:
<?php
$servername = "x.x.x.x"; # 当前服务器IP地址
$username = "root";
$password = "123456";
// 创建连接
$conn = mysqli_connect($servername, $username, $password);
// 检测连接
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "php可以连接MySQL...";
?>
2、访问http://x.x.x.x/test.php
即可进行访问测试。
如果可以看到如下字样即表是成功:
php可以连接MySQL...