nginx: Send Custom HTTP Headers

How do I send or set arbitrary HTTP headers using nginx web server?

You need to use add_header directive. It sends arbitrary HTTP header when the response code is equal to 200, 204, 301, 302 or 304. You must compile nginx with NginxHttpHeadersModule. Once compiled edit nginx.conf:
# vi nginx.conf
Add the headers as follows in http, server, or location section:

add_header name value

In this example, set X-Whom to www-node01:

add_header X-Whom www-node01

Save and close the file. Reload nginx:
# /usr/local/nginx/sbin/nginx -s reload

How Do I Test It?

Simply use curl as follows:
$ curl -I example.com
Sample outputs:

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
  • 3 Users Found This Useful
Was this answer helpful?

Related Articles

All About YUM

up2date command was part of RHEL v4.x or older version. You need to use yum command to update...

CentOS / Redhat: Create Software RAID 1 Array

RAID devices are virtual devices created from two or more real block devices. Linux supports...

Bash Shell Generate Random Numbers

How do I create or generate random numbers (sequence of numbers that lack any pattern), under...

CentOS / Redhat: Install KVM Virtualization Software

Required Packages You must install the following packages: kmod-kvm : kvm kernel module(s)...

CentOS / Redhat: Install nginx As Reverse Proxy Load Balancer

nginx is a Web and Reverse proxy server. Nginx used in front of Apache Web servers. All...