我正在尝试为 nginx 中的非 HTTPS 请求返回自定义 400 错误页面。我是 nginx 的新手,但我在自定义错误页面上阅读了许多示例页面,但似乎对我没有任何作用。我的配置:
server {
listen 80;
error_page 400 /400.html;
location = /400.html {
root /var/www/html;
}
return 400;
}
Run Code Online (Sandbox Code Playgroud)
在返回工作,因为如果我改变代码(如401或500),我得到了适当的默认nginx的错误页面。我知道该文件存在,因为如果我取出退货,它将直接为我的 400.html 页面提供服务,没有任何问题。但是当我返回错误代码时,我尝试过的任何事情都没有导致我的自定义页面出现。
我错过了什么?
更新:我尝试过的其他变体无济于事:
server {
listen 80;
error_page 400 /400.html;
location = /400.html {
root /var/www/html;
}
return 400;
}
server {
listen 80;
root /var/www/html;
error_page 400 /400.html;
location = /400.html {
allow all;
}
return 400;
}
server {
listen 80;
root /var/www/html;
error_page 400 …Run Code Online (Sandbox Code Playgroud)