Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Running behind a reverse proxy

Loggerhead's preferred deployment is as a long-running HTTP server behind a reverse proxy such as nginx, Apache (with mod_proxy), or Caddy. The proxy handles TLS, logging, access control, and any other shared concerns for your site.

nginx

location /bzr/ {
    proxy_pass http://127.0.0.1:8080/bzr/;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto $scheme;
}

And run Loggerhead with a matching --prefix:

loggerhead-serve --prefix=/bzr /srv/bzr

Apache

<Location "/bzr/">
    ProxyPass http://127.0.0.1:8080/bzr/
    ProxyPassReverse http://127.0.0.1:8080/bzr/
</Location>

Again, match --prefix=/bzr on the Loggerhead side.

systemd

A minimal unit:

[Unit]
Description=Loggerhead
After=network.target

[Service]
ExecStart=/usr/bin/loggerhead-serve --cache-dir=/var/cache/loggerhead /srv/bzr
User=loggerhead
Group=loggerhead
Restart=on-failure

[Install]
WantedBy=multi-user.target