centos

centos php-fpm与nginx如何协同工作

小樊
95
2025-02-12 15:55:29
栏目: 编程语言

CentOS 上 PHP-FPM(FastCGI Process Manager)和 Nginx 可以协同工作,以提供高效的 PHP 网页服务。以下是它们协同工作的基本步骤:

  1. 安装 Nginx 和 PHP-FPM: 在 CentOS 上,你可以使用 YUM 包管理器来安装 Nginx 和 PHP-FPM。运行以下命令来安装它们:
sudo yum install epel-release
sudo yum install nginx
sudo yum install php-fpm
  1. 配置 PHP-FPM: 编辑 PHP-FPM 的配置文件,通常位于 /etc/php-fpm.d/www.conf/etc/php-fpm.conf。确保 listen 指令设置为一个 Unix 套接字或者 TCP/IP 地址和端口,例如:
listen = /run/php-fpm/www.sock

或者

listen = 127.0.0.1:9000
  1. 配置 Nginx: 编辑 Nginx 的配置文件,通常位于 /etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。在 server 块中,你需要配置一个 location 块来处理 PHP 文件。如果你使用的是 Unix 套接字,配置如下:
location ~ \.php$ {
    fastcgi_pass   unix:/run/php-fpm/www.sock;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

如果使用 TCP/IP 端口,配置如下:

location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}
  1. 启动并启用 Nginx 和 PHP-FPM 服务: 使用以下命令启动 Nginx 和 PHP-FPM 服务,并设置它们在系统启动时自动运行:
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
  1. 测试配置: 创建一个简单的 PHP 文件(例如 info.php),并将其放置在 Nginx 的根目录下(通常是 /usr/share/nginx/html)。在浏览器中访问该文件,如果看到 PHP 信息页面,则表示 Nginx 和 PHP-FPM 已成功协同工作。
<?php
phpinfo();
?>

通过以上步骤,你可以在 CentOS 上配置 Nginx 和 PHP-FPM 以协同工作,提供高效的 PHP 网页服务。

0
看了该问题的人还看了