1. 安装nginx
yum install nginx -y
安装完成后,输入
whereis nginx
可以看到安装目录,则安装成功
2. 安装php php-fpm php-mysql
yum install php php-fpm php-json php-mysqlnd -y
如果提示错误:没有匹配的参数 php-mysql
//搜索php-mysql安装包,安装即可:
yum search php-mysql
安装完成后,输入
whereis php
可以看到安装目录,则安装成功
3. 启动php-fpm
#执行以下命令启动php-fpm
systemctl start php-fpm
#查看php-fpm启动状态
systemctl status php-fpm
#查看自启动情况
systemctl list-unit-files | grep php-fpm
#开机自启动
systemctl enable php-fpm
4. 配置nginx
在nginx/conf下新建一个php.conf
upstream php{
server 127.0.0.1:9000;
}
server {
listen 80;
server_name abc.com www.abc.com;
server_tokens off; ## Don't show the nginx version number
## Increase this if you want to upload large attachments
## Or if you want to accept large git objects over http
client_max_body_size 0;
location / {
root /var/www/html/php;
index index.html index.php;
}
error_page 404 /404.html;
error_page 422 /422.html;
error_page 500 /500.html;
error_page 502 /502.html;
location ~ \.php$ {
root /var/www/html/php;
include fastcgi_params;
fastcgi_pass php;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
备注:
1. “fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;”写在.conf中对单个配置有效,可以在Nginx目录下的fastcgi_params文件中增加此行配置,可以全局生效;
2. 需要页面始终502的话,可以到/etc/php-fpm.d/www.conf中查看监听是不是没有使用9000,使用了scoket(listen = /run/php-fpm/www.sock)。这样的话,upstream换成以下配置:
upstream php{
server unix:/run/php-fpm/www.sock;
}
调整配置后,需要重启php-fpm和Nginx:
systemctl restart php-fpm
systemctl restart nginx
在nginx.conf中引用php.conf
include conf/php.conf;
5. 启动nginx
systemctl start nginx
6. 校验
在/var/www/html/php下新建一个index.php
访问配置的域名,看到php信息则配置成功。