nginx:发送自定义HTTP标头

时间:2020-01-09 10:42:48  来源:igfitidea点击:

如何使用Nginx Web服务器发送或者设置任意HTTP标头?
您需要使用add_header指令。
当响应代码等于200、204、301、302或者304时,它将发送任意HTTP标头。
您必须使用NginxHttpHeadersModule编译nginx。
编译后,编辑nginx.conf:

# vi nginx.conf

在http,server或者location部分中添加标题如下:

add_header name value

在此示例中,将X-Whom设置为www-node01:

add_header X-Whom www-node01

保存并关闭文件。
重新加载nginx:

# /usr/local/nginx/sbin/nginx -s reload

我该如何测试?

只需按以下方式使用curl:

$ curl -I example.com

输出示例:

HTTP/1.1 200 OK
Server: nginx
Date: Mon, 15 Mar 2010 10:40:58 GMT
Content-Type: text/html; charset=ISO-8859-1
Connection: keep-alive
X-Whom: www-node01

但是,为什么要发送自定义标题?

您可以将自定义标头用于调试目的。
您可以将NGINX用作多个Apache/Lighttpd节点的反向代理/负载平衡器。
每对NGINX LB都可以使用自定义标头以及内部节点进行标识。
另一种用法是使用自定义标头监视服务器。