在CentOS系统上,PHP和Nginx可以通过以下步骤协同工作:
安装Nginx: 首先,确保你的CentOS系统已经安装了Nginx。如果尚未安装,可以使用以下命令进行安装:
sudo yum install epel-release
sudo yum install nginx
启动Nginx服务: 安装完成后,启动Nginx服务并设置为开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
安装PHP-FPM: PHP-FPM(FastCGI Process Manager)是一个PHP FastCGI实现,可以与Nginx一起使用。使用以下命令安装PHP-FPM:
sudo yum install php php-fpm
配置PHP-FPM:
编辑PHP-FPM配置文件(通常位于/etc/php-fpm.d/www.conf),设置监听地址和端口。例如,你可以将其设置为Unix socket:
listen = /run/php-fpm/php-fpm.sock
如果你更喜欢使用TCP/IP,可以将listen行更改为:
listen = 127.0.0.1:9000
修改Nginx配置:
编辑Nginx的默认站点配置文件(通常位于/etc/nginx/conf.d/default.conf),添加一个location块来处理PHP请求。例如:
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/php-fpm.sock; # 使用Unix socket
# fastcgi_pass 127.0.0.1:9000; # 或者使用TCP/IP
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
这个配置告诉Nginx将所有以.php结尾的请求传递给PHP-FPM。
重启Nginx和PHP-FPM服务: 为了使更改生效,需要重启Nginx和PHP-FPM服务:
sudo systemctl restart nginx
sudo systemctl restart php-fpm
现在,当你在浏览器中访问你的CentOS服务器上的PHP文件时,Nginx会将这些请求转发给PHP-FPM进行处理,然后将生成的HTML内容返回给客户端。这样,PHP和Nginx就成功地协同工作了。