NGINX configs for Thulium
Go to file
Jonathan Chan cc1efe9441 ionathan.ch -> ionchy.ca 2025-02-23 17:22:56 +01:00
README.md Update README.md 2021-05-14 23:44:57 -07:00
default Redirect to website by default 2025-02-23 17:21:53 +01:00
default.bak Updated default config 2025-02-23 17:22:08 +01:00
git.ionathan.ch Listen also on IPv6. 2022-11-24 15:03:05 +01:00
git.ionchy.ca ionathan.ch -> ionchy.ca 2025-02-23 17:22:56 +01:00
next.ionathan.ch Fix some Nextcloud issue with federation 2025-02-23 17:21:19 +01:00
next.ionchy.ca ionathan.ch -> ionchy.ca 2025-02-23 17:22:56 +01:00
rss.ionathan.ch Listen also on IPv6. 2022-11-24 15:03:05 +01:00
rss.ionchy.ca ionathan.ch -> ionchy.ca 2025-02-23 17:22:56 +01:00

README.md

Templates

These NGINX configurations set up HTTP servers at port 80. HTTPS on port 443 should be set up using certbot.

Static web page

The URL example.space will point to files in /srv/www/example.space.

server {
    listen 80;
    listen [::]:80;
    root /srv/www/example.space;
    server_name example.space;
    error_page 404 /404.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

Reverse proxy

The URL example.space will point to the local port 8080.

server {
    listen 80;
    listen [::]:80;
    client_max_body_size 512M;
    server_name example.space;
    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

PHP site with HTTP authentication

The URL example.space will point to the PHP application at /srv/www/example.space/index.php. HTTP authentication done as indicated here.

server {
    listen 80;
    listen [::]:80;
    server_name example.space;

    root /srv/www/example.space;
    index index.html index.php;

    # set up HTTP basic authentication
    auth_basic           "Authentication Required";
    auth_basic_user_file /etc/apache2/.htpasswd;

    location / {
        try_files $uri $uri/ =404;
    }

    # process PHP requests
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}