我已经设置 NGINX 为我的代理服务器返回自定义错误文档,它显示正确的文件但总是返回一个200 OK标题。
相关的 NGINX 配置是
server {
listen 94.23.155.32:80;
server_name rmg.io www.rmg.io;
proxy_intercept_errors on;
location / {
proxy_pass http://rmgshort/;
}
error_page 404 = /error/404.html;
error_page 500 501 502 503 503 = /error/500.html;
location /error/ {
root /var/rmg/;
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想,你可以对此进行测试,这个页面应该返回404错误,它返回正确的文档,但更改状态代码“200 OK”(测试HTTP头位置),如果我更换root /var/rmg/与internal;正确的标题是返回,但随后我自定义错误页面不起作用。
如何让 NGINX 返回带有正确状态标题的自定义错误文档?
我在 RHEL 6.1 上运行 NGINX 1.0.4
wom*_*ble 12
滴=出的error_page指令; 您可以使用=NNN(例如=401)指定任何您喜欢的返回代码,但是如果您给出一个空的,=则表示“使用错误处理程序的错误代码”,对于静态文件,它始终为“200 OK”。如果没有 any =,您将得到返回的原始错误代码。
令人恼火的是,直接阅读(否则)精美手册(无论如何在撰写此答案时)可能会让您认为它是相反的(=保留原始返回码),但本地测试表明它确实有效我上面描述的方式。
| 归档时间: |
|
| 查看次数: |
9009 次 |
| 最近记录: |