nginx下添加自定义头信息

[ 2018-07-23 16:57:15 | 作者: admin ]
字号: | |
p.s. 如果实在 nginx -s reload 修改配置不生效,需要杀进程重新开 nginx 。参考: http://blog.xg98.com/article.asp?id=2656


在 nginx 配置里加了一条 add_header 的配置,测试发现在 403 404 这些状态下并不会输出已配置的头,而 200 状态下却是正常的。

查了一下文档,发现说明上有写,add_header 配置只有在 200, 201, 204, 206, 301, 302, 303, 304, or 307 这些状态下才有效。

这是一个很奇怪的限制,最后在 nginx 论坛发现了一段回复,说之所以这样限制是因为 add_header 在一些错误状态码下会产生意外的作用,比如添加一个 expires 1y 后,会让错误状态意外地缓存超长的时间,导致意外事故。

解决办法也是有的,在 1.7.5 版本之后,可以添加一个 always 参数,这样就会总是可以输出配置的头部,风险自负。

===============================================================================

有些首部信息,可以通过nginx来添加。比如访问静态文件、反向代理的时候等等。

比如本文添加了两个首部:Pragma和name,配置在location节点下面

        add_header Pragma Pragma;
        add_header name piaohailin;

配置文件如图:
attachments/201807/23_165919_1.png

注意:像一些内置头信息是没法设置的,比如Server等
[最后修改由 admin, 于 2020-05-05 10:25:15]
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2516

这篇日志没有评论。

此日志不可发表评论。