前言
Nginx是通过php-fpm来通信的,所以需要修改的监听9000端口。
当 Nginx 配置支持 PHP 时,它可以将 PHP 请求转发给 PHP-FPM,由 PHP-FPM 处理请求并返回结果。
要配置 Nginx 支持 PHP,你需要在 Nginx 配置文件中添加一个 location 块,用于处理以
.php
结尾的请求。同时,你还需要设置一些必要的参数,如 fastcgi_param 和 fastcgi_pass,以确保 PHP-FPM 正常工作。在添加完配置后,你需要重新加载 Nginx 配置文件以使其生效。
这样,当你访问一个以
.php
结尾的网页时,Nginx 将请求转发给 PHP-FPM,由 PHP-FPM 处理该请求并返回结果给 Nginx,最后将结果返回给客户端。
目录
1 关闭防火墙和selinux
1.1 关闭防火墙
1.2 关闭selinux
2 生成配置文件
3 安装php-fpm
4 修改默认用户
5 创建目录
6 创建.php结尾文件
7 重新启动php-fpm和nginx
8 测试
1 关闭防火墙和selinux
1.1 关闭防火墙
systemctl stop firewalld
永久关闭防火墙
systemctl disable firewalld
1.2 关闭selinux
setenforce 0
修改配置文件
vi /etc/selinux/config
#将SELINUX=enforcing修改为SELINUX=disabled。
2 生成配置文件
在/etc/nginx/conf.d/下面生成一个配置文件admin.conf【可以随意取,但必须是.conf结尾】
配置默认的server段和location段
vi /etc/nginx/conf.d/admin.conf
写入如下内容:
server {
listen 80;
server_name www.test.com admin.test.com;
root /var/www/card/public;
index index.php index.html index.htm;
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
location ~ \.php$ {
root /var/www/card/public;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
3 安装php-fpm
yum -y install php-fpm
4 修改默认用户
vi /etc/php-fpm.d/www.conf
搜索Apache
:/apache
默认启动的是Apache的用户,这里将apache修改为nginx
修改前:
修改后:
5 创建目录
刚才我们写入文件内容的主目录是/var/www/card/public,所以2我们要创建一下
创建目录(连续创建目录mkdir -p)
mkdir -p /var/www/card/public
6 创建.php结尾文件
cd /var/www/card/public
vi php_info.php
【必须是以.php结尾】
写入如下内容:(网页代码)
<DOCTYPE html>
<html>
<body>
<?php
echo "mortalz7,hello world";
?>
</body>
</html>
7 重新启动php-fpm和nginx
重新启动php-fpm
systemctl restart php-fpm
验证:
查看端口(9000)开启情况
先安装lsof
yum -y install lsof
查看
lsof -i:9000
重新启动nginx
systemctl restart nginx
8 测试
浏览器访问验证
IP地址+/php_info.php
成功!