温馨提示×

PHP在CentOS上如何配置Nginx

小樊
52
2025-09-17 17:00:24
栏目: 编程语言

在CentOS上配置Nginx以使用PHP,你需要完成以下几个步骤:

  1. 安装Nginx: 如果你还没有安装Nginx,可以使用以下命令来安装它:

    sudo yum install epel-release sudo yum install nginx 
  2. 启动Nginx服务: 安装完成后,启动Nginx服务并设置开机自启:

    sudo systemctl start nginx sudo systemctl enable nginx 
  3. 安装PHP-FPM: Nginx本身不处理PHP文件,所以你需要安装PHP-FPM(FastCGI Process Manager)来处理PHP请求:

    sudo yum install php-fpm 
  4. 配置PHP-FPM: 编辑PHP-FPM的配置文件,通常位于/etc/php-fpm.d/www.conf,确保监听地址设置为Unix socket或者TCP/IP端口,这里我们使用Unix socket:

    listen = /run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx 

    然后重启PHP-FPM服务:

    sudo systemctl restart php-fpm 
  5. 配置Nginx以处理PHP请求: 编辑Nginx的默认站点配置文件,通常位于/etc/nginx/conf.d/default.conf,或者创建一个新的站点配置文件。在这个配置文件中,你需要添加一个location块来处理.php文件:

    server { listen 80; server_name example.com; # 替换为你的域名或公网IP root /var/www/html; # 网站根目录 index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } 

    确保将server_name指令替换为你的域名或公网IP地址,并根据需要调整root指令的路径。

  6. 重启Nginx服务: 应用配置更改后,重启Nginx服务:

    sudo systemctl restart nginx 
  7. 测试PHP: 创建一个名为info.php的文件在你的网站根目录下,内容如下:

    <?php phpinfo(); ?> 

    在浏览器中访问http://your_server_ip_or_domain/info.php,如果看到PHP信息页面,说明Nginx和PHP-FPM已经成功配置并能够处理PHP文件。

请注意,这些步骤可能会根据你的具体需求和环境有所不同。如果你使用的是SELinux,可能还需要进行额外的配置来允许Nginx和PHP-FPM之间的通信。此外,确保你的防火墙设置允许HTTP(端口80)和HTTPS(端口443)流量。

0