Skip to content

Setting up NGINX for GotHub


NGINX does not support automatic certificate generation. You need to use certbot to create and maintain the certificates but that is out of scope of this tutorial. We also recommend you to try the Caddy web server, because it has automatic HTTPS, HTTP/3 and easier configuration.

After installing NGINX, create /etc/nginx/conf.d/gothub.conf with the following contents

server {
    listen 80;
    listen [::]:80;

    server_name gothub.domain.tld;

    # Recommended but not required
    access_log off;
    error_log /var/log/nginx/error.log crit;

    location / {
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;    # so GotHub knows domain
        proxy_http_version 1.1;     # to keep alive
        proxy_set_header Connection ""; # to keep alive