ubuntu

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

小樊
48
2025-06-27 12:12:15
栏目: 编程语言

在Ubuntu系统上,PHP-FPM(FastCGI Process Manager)和Nginx可以协同工作来处理PHP请求。以下是配置它们协同工作的步骤:

1. 安装Nginx和PHP-FPM

首先,更新你的包列表并安装Nginx和PHP-FPM:

sudo apt update
sudo apt install nginx php-fpm

2. 配置PHP-FPM

PHP-FPM的默认配置文件通常位于 /etc/php/7.x/fpm/pool.d/www.conf(其中 7.x 是你的PHP版本)。你可以根据需要编辑这个文件。

例如,确保监听地址设置为Unix socket:

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

然后重启PHP-FPM服务:

sudo systemctl restart php7.x-fpm

3. 配置Nginx

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

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

找到处理PHP请求的部分,并修改为使用PHP-FPM的Unix socket:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;
    index index.php index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
        try_files $uri $uri/ =404;
    }

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

    location ~ /\.ht {
        deny all;
    }
}

确保将 php7.x 替换为你的PHP版本。

4. 启用配置

启用Nginx配置并重启Nginx服务:

sudo nginx -t  # 检查配置文件是否有语法错误
sudo systemctl restart nginx

5. 测试配置

创建一个简单的PHP文件来测试配置是否正确:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

然后在浏览器中访问 http://your_server_ip/info.php,你应该能看到PHP信息页面。

6. 安全配置

为了提高安全性,你可以考虑以下几点:

通过以上步骤,你就可以在Ubuntu系统上成功配置Nginx和PHP-FPM协同工作了。

0
看了该问题的人还看了