ubuntu

Ubuntu上php-fpm与Nginx如何配合使用

小樊
44
2025-04-17 17:23:06
栏目: 编程语言

在Ubuntu上,PHP-FPM(FastCGI Process Manager)与Nginx配合使用可以实现高效的PHP网站和应用服务。以下是配置Nginx以使用PHP-FPM的步骤:

  1. 安装PHP-FPM: 在Ubuntu上,可以使用以下命令安装PHP-FPM:

    sudo apt-get update
    sudo apt-get install php-fpm
    
  2. 配置PHP-FPM: 安装完成后,PHP-FPM的默认配置文件通常位于/etc/php/版本号/fpm/pool.d/www.conf。你可以根据需要编辑这个文件,例如设置监听地址和端口。默认情况下,PHP-FPM监听Unix套接字/run/php/php7.4-fpm.sock(版本号可能会有所不同)。

  3. 配置Nginx: 编辑Nginx的站点配置文件,通常位于/etc/nginx/sites-available/目录下。你需要为你的站点创建一个配置文件,例如yourdomain.com

    在配置文件中,找到location ~ \.php$部分,并修改为以下内容,以便Nginx将PHP请求传递给PHP-FPM:

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根据实际安装的PHP版本调整
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
    

    如果你想让Nginx也处理PHP请求(而不是总是传递给PHP-FPM),可以添加一个条件判断:

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根据实际安装的PHP版本调整
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }
    
  4. 重启Nginx和PHP-FPM服务: 保存配置文件后,重启Nginx和PHP-FPM服务以应用更改:

    sudo systemctl restart nginx
    sudo systemctl restart php7.4-fpm # 根据实际安装的PHP版本调整
    
  5. 测试配置: 创建一个名为info.php的文件,放在你的网站根目录下,内容如下:

    <?php
    phpinfo();
    ?>
    

    在浏览器中访问http://yourdomain.com/info.php,如果看到PHP信息页面,说明配置成功。

以上步骤应该可以帮助你在Ubuntu上配置Nginx以使用PHP-FPM。根据实际需求,你可能需要调整配置文件以满足特定需求。

0
看了该问题的人还看了