nginx + fastCGI for PHP error_page


nginx + fastCGI for PHP error_page

我用 fastCGI for PHP 在 nginx 中设置了自定义错误页面,就像这样,它的工作原理是:

root <FOLDER>;
error_page 404 /error.php?404;
location = /error.php {
    include /etc/nginx/fastcgi.conf;
    fastcgi_pass  127.0.0.1:1234;
    root  <FOLDER>;
}

但是由于我有一个错误.php对于每个HTTP错误代码,我想以一般形式进行设置。问题是我不知道nginx是否提供了GET传递给错误的错误代码.php

我正在寻找类似的东西:

root <FOLDER>;
error_page 500 501 502 401 402 403 404 /error.php?NGINX_ERROR_CODE;
location = /error.php {
    include /etc/nginx/fastcgi.conf;
    fastcgi_pass  127.0.0.1:1234;
    root  <FOLDER>;
}

问题是NGINX_ERROR_CODE我不知道它是否提供了这样的东西来设置通用error_page处理程序。

有什么办法吗?

谷歌搜索

,最初似乎没有它的var。

但是,您可以设置多个错误页指令。

error_page 401 /error.php?e=401;
error_page 402 /error.php?e=402;
error_page 403 /error.php?e=403;
error_page 404 /error.php?e=404;
error_page 500 501 502 /error.php?e=50x;

等等。