在 NGINX + PHP-FPM 中设置 PHP 脚本的全局处理

在 NGINX + PHP-FPM 中设置 PHP 脚本的全局处理

我必须为每个虚拟主机定义 fastcgi_pass。如何全局定义它?

server {
    listen       80;
    server_name  www.domain.tld;

    location / {
        root   /home/user/www.domain.tld;
        index  index.html index.php;
    }

    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /home/user/domain.tld$fastcgi_script_name;
        include        fastcgi_params;
    }

}

答案1

创建一个文件,可以include在任何需要的地方使用。例如:

cat > /etc/nginx/php-fpm <<EOF
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
include        fastcgi_params;
EOF

然后修改您的locationinclude php-fpm;修复root指令(它应该出现在下server,而不是下location /;这是一个常见的 nginx 配置错误)。

相关内容