PHP

处理 PHP 动态请求

在这一节中,我们将重点介绍如何配置 Nginx 来处理 PHP 动态请求。PHP 是一种常用的后端编程语言,通常用于生成动态网页内容。

  1. 安装 PHP-FPM

    首先,确保您已经安装了 PHP-FPM(FastCGI Process Manager)。根据您所使用的 Linux 发行版,可以使用适当的包管理工具进行安装。例如,在 Ubuntu 上,可以运行以下命令:

    sudo apt-get install php-fpm
  2. 配置 Nginx

    配置 Nginx 以将 PHP 动态请求传递给 PHP-FPM 处理。通常,PHP-FPM 监听在本地的某个套接字上。以下是一个示例 Nginx 配置:

    server {
        listen 80;
        server_name your_domain.com;
        
        # Laravel框架默认重写规则;不同 PHP 框架参考官方推荐配置。
        location / {
            try_files $uri $uri/ /index.php?$query_string;
        }
        
        # 配置 PHP 动态请求
        location ~ \.php$ {
            root /usr/share/nginx/html;
            fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # PHP-FPM 套接字路径
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
        }
    }

    在上述示例中,我们使用 location ~ \.php$ 匹配所有以 .php 结尾的请求,并将这些请求通过 FastCGI 协议传递给 PHP-FPM,使用套接字 /var/run/php/php7.4-fpm.sock。确保套接字路径与您的 PHP-FPM 配置一致。

  3. 重启 Nginx 和 PHP-FPM

    完成配置后,重新启动 Nginx 服务器以应用更改:

    sudo nginx -s reload

    同时,确保 PHP-FPM 服务正在运行,如果需要,可以使用以下命令启动或重启它:

    sudo systemctl start php7.4-fpm
  4. 测试 PHP 动态请求

    现在,您可以在浏览器中访问包含 PHP 动态内容的页面,例如 http://your_domain.com/index.php,Nginx 将会将请求传递给 PHP-FPM 处理,然后将 PHP 生成的内容返回给客户端。

这样,您就可以使用 Nginx 配置来处理 PHP 动态请求。请根据您的具体需求和服务器配置进行适当的调整。

Last updated