HTTP标头和错误页面 - NGINX

时间:2017-10-24 11:14:47

标签: linux nginx server http-headers webserver

我在NGINX中的自定义错误页面遇到了一些麻烦。 首先,我尝试了这个

server {
    ...
    location / {
        if ( $request_method !~ (GET|POST) ) {
            error_page 418 = @not_supported;
            return 418;
        }
        proxy_pass http://x.x.x.x;
    }

    location @not_supported {
        return 501;
    }

    error_page 501 /some_page.html;
    location = /some_page.html {
        root html;
    }
}

如果我发送除GETPOST以外的任何其他内容,我会收到一个显示501 method is not implemented的默认错误页面,以及服务器的名称和版本。 如果返回位于第一个位置,则服务器返回some_page.html

之后,我尝试添加recursive_error_pages,这确实通过提供自定义错误页面帮助我,但它完全更改了标题(添加了我之前删除的标题)。

任何人都知道如何让服务器提供自定义页面,并保留标题的设置?

谢谢。

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。 我将我想要的所有配置移动到错误的位置,它就像一个魅力。