mod_setenv: Lighttpd Send Custom Headers

How do I add a header to the HTTP request that was received from the client under Lighttpd web server?

You can use the setenv module (mod_setenv) which allows influencing the environment external applications are spawned in and the response headers the server sends to the clients. Edit lighttpd.conf, enter:
# vi /etc/lighttpd/lighttpd.conf
Add mod_setenv:

Advertisement

server.modules += ( "mod_setenv" )

Set X-proxy header:

setenv.add-response-header = ( "X-Proxy" => "www-02" )

Or sent server itself:

setenv.add-request-header = ( "X-Proxy" => server.name )

Save and close the file. Reload lighttpd:
# service lighttpd reload
To see headers, enter:
$ curl -I http://example.com/

References:

🥺 Was this helpful? Please add a comment to show your appreciation or feedback.

nixCrat Tux Pixel Penguin
Hi! 🤠
I'm Vivek Gite, and I write about Linux, macOS, Unix, IT, programming, infosec, and open source. Subscribe to my RSS feed or email newsletter for updates.

1 comment… add one
  • stibot Feb 15, 2015 @ 8:14

    For some reason it did not work for me correctly.

    I tried setenv.add-response-header = ( “Access-Control-Allow-Origin” => “*” )

    since Chrome was not able to load MathJax fonts. Only some files were stamped within their header. I do not understand well the reasoning but it started to work when I moved the above line into the current host section:

    $HTTP["host"] =~ "mathjax" {
      setenv.add-response-header = ( "Access-Control-Allow-Origin" => "*" )
    }
    

Leave a Reply

Your email address will not be published. Required fields are marked *

Use HTML <pre>...</pre> for code samples. Your comment will appear only after approval by the site admin.