summaryrefslogtreecommitdiffstats
path: root/files/etc/nginx/sites-available
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2024-06-01 18:04:54 +0200
committerGuilhem Moulin <guilhem@fripost.org>2024-06-01 18:05:02 +0200
commitbc72ead7c4be719a3cf24b4f063f2156d85126e7 (patch)
treebf48540656454ddf8846c1ceefc76099ced46ae0 /files/etc/nginx/sites-available
parent20708ade1f56a1ef84b22ecdca42af9f9bd45c69 (diff)
tasks/httpd.yml: Create /etc/nginx/sites-enabled/webmap as a symlink.
Diffstat (limited to 'files/etc/nginx/sites-available')
-rw-r--r--files/etc/nginx/sites-available/webmap80
1 files changed, 80 insertions, 0 deletions
diff --git a/files/etc/nginx/sites-available/webmap b/files/etc/nginx/sites-available/webmap
new file mode 100644
index 0000000..d16ab60
--- /dev/null
+++ b/files/etc/nginx/sites-available/webmap
@@ -0,0 +1,80 @@
+server {
+ listen 80;
+ listen [::]:80;
+
+ server_name karta.klimatanalysnorr.se hel01.guilhem.se;
+
+ include /etc/lacme/nginx.conf;
+
+ access_log /var/log/nginx/access.log;
+ error_log /var/log/nginx/error.log warn;
+
+ location / {
+ return 301 https://$host$request_uri;
+ }
+}
+
+server {
+ listen 443;
+ listen [::]:443;
+
+ server_name hel01.guilhem.se;
+
+ access_log /var/log/nginx/access.log;
+ error_log /var/log/nginx/error.log warn;
+
+ ssl_certificate /etc/nginx/ssl/webmap.rsa.pem;
+ ssl_certificate_key /etc/nginx/ssl/webmap.rsa.key;
+ include snippets/ssl.conf;
+
+ location / {
+ return 303 https://karta.klimatanalysnorr.se$request_uri;
+ }
+}
+
+server {
+ listen 443 ssl http2 default_server;
+ listen [::]:443 ssl http2 default_server;
+
+ server_name karta.klimatanalysnorr.se;
+
+ access_log /var/log/nginx/access.log;
+ error_log /var/log/nginx/error.log warn;
+
+ ssl_certificate /etc/nginx/ssl/webmap.rsa.pem;
+ ssl_certificate_key /etc/nginx/ssl/webmap.rsa.key;
+ include snippets/ssl.conf;
+
+ add_header Referrer-Policy "no-referrer";
+ add_header X-Frame-Options "SAMEORIGIN";
+ add_header X-Content-Type-Options "nosniff";
+ add_header X-XSS-Protection "1; mode=block";
+ add_header Strict-Transport-Security "max-age=31557600; includeSubDomains" always;
+ add_header Content-Security-Policy "default-src 'none'; connect-src 'self'; font-src 'self'; frame-src 'self'; img-src 'self' data: https://minkarta.lantmateriet.se/map/; script-src 'self'; style-src 'self'; frame-ancestors 'self'; form-action 'none'; base-uri 'self'";
+
+ root /var/www/webmap;
+ index index.html;
+
+ location ^~ /assets/ {
+ expires 7d;
+ gzip_static on;
+ try_files $uri =404;
+ }
+ location ^~ /tiles/ {
+ expires 1d;
+ gzip_static on;
+ try_files $uri =404;
+ error_page 404 /_.txt;
+ }
+
+ location = /_.txt {
+ # cache 404 responses
+ add_header Strict-Transport-Security "max-age=31557600; includeSubDomains" always;
+ add_header Cache-Control "public; max-age=86400" always;
+ internal;
+ }
+
+ location / {
+ try_files $uri $uri/ =404;
+ }
+}