ubuntu

ubuntu php-fpm与nginx如何联调

小樊
60
2025-06-05 04:03:48
栏目: 编程语言

要在Ubuntu上将PHP-FPM与Nginx联调,你需要按照以下步骤操作:

  1. 安装Nginx和PHP-FPM:
sudo apt update
sudo apt install nginx
sudo apt install php-fpm
  1. 配置PHP-FPM:

编辑PHP-FPM配置文件,默认路径为/etc/php/7.x/fpm/pool.d/www.conf(其中7.x是你的PHP版本)。

sudo nano /etc/php/7.x/fpm/pool.d/www.conf

找到以下行:

;listen = /run/php/php7.x-fpm.sock

取消注释(删除前面的分号)并修改为:

listen = /run/php/php7.x-fpm.sock

保存并退出编辑器。

  1. 配置Nginx:

编辑Nginx的默认站点配置文件,默认路径为/etc/nginx/sites-available/default

sudo nano /etc/nginx/sites-available/default

找到以下部分:

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.x-fpm.sock;
}

确保fastcgi_pass指向正确的PHP-FPM套接字文件。如果你的PHP版本不同,请将php7.x替换为相应的版本号。

保存并退出编辑器。

  1. 重启Nginx和PHP-FPM服务:
sudo systemctl restart nginx
sudo systemctl restart php7.x-fpm

php7.x替换为你的PHP版本号。

  1. 创建一个PHP测试文件:

在Nginx的默认网站根目录(通常为/var/www/html)中创建一个名为info.php的文件。

sudo nano /var/www/html/info.php

在文件中添加以下内容:

<?php
phpinfo();
?>

保存并退出编辑器。

  1. 测试配置:

在浏览器中访问http://your_server_ip/info.php。你应该看到PHP信息页面,这表明Nginx已成功与PHP-FPM联调。

  1. 安全设置:

在生产环境中,建议关闭PHP的执行权限,以防止潜在的安全风险。将以下内容添加到/etc/nginx/sites-available/default文件中的location ~ \.php$块:

location ~ \.php$ {
    ...
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}

保存并退出编辑器,然后重启Nginx服务:

sudo systemctl restart nginx

现在,你已经成功地在Ubuntu上将PHP-FPM与Nginx联调。

0
看了该问题的人还看了