From c19d5922a6bf0db735ab5b7bf7bf6668448fed62 Mon Sep 17 00:00:00 2001 From: Avior Date: Thu, 30 May 2024 10:59:15 +0200 Subject: [PATCH 1/2] fix: redirect to non www url Signed-off-by: Avior --- nginx.conf | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/nginx.conf b/nginx.conf index 2e3c2cc..f976329 100644 --- a/nginx.conf +++ b/nginx.conf @@ -5,6 +5,16 @@ events { } http { + # Redirect from non-www to www + # server { + # server_name ~^(?!www\.)(?.+)$; + # return 301 https://www.$domain$request_uri; + # } + # Redirect from www to non-www + server { + server_name ~^www\.(?.+)$; + return 301 https://$domain$request_uri; + } server { listen 3000; listen [::]:3000; From 551938acb13f3ff412f0794798420f5c60756841 Mon Sep 17 00:00:00 2001 From: Avior Date: Thu, 30 May 2024 11:29:50 +0200 Subject: [PATCH 2/2] another try another method Signed-off-by: Avior --- nginx.conf | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/nginx.conf b/nginx.conf index f976329..1a7897c 100644 --- a/nginx.conf +++ b/nginx.conf @@ -5,20 +5,20 @@ events { } http { - # Redirect from non-www to www - # server { - # server_name ~^(?!www\.)(?.+)$; - # return 301 https://www.$domain$request_uri; - # } - # Redirect from www to non-www - server { - server_name ~^www\.(?.+)$; - return 301 https://$domain$request_uri; - } server { listen 3000; listen [::]:3000; + # Redirect from non-www to www + # if ($host ~ ^(?!www\.)(?.+)$) { + # return 301 $scheme://www.$domain$request_uri; + # } + + # Redirect from www to non-www + if ($host ~ ^www\.(?.+)$) { + return 301 $scheme://$domain$request_uri; + } + server_name _; root /usr/share/nginx/html; @@ -33,8 +33,8 @@ http { error_page 404 /404.html; error_page 500 502 503 504 /500.html; - # Security headers (note: temporarely unvailable "prefetch-src 'self'; ") - add_header Content-Security-Policy "default-src 'self'; frame-ancestors 'none'; form-action 'self'; manifest-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src data: 'self'; font-src 'self'; connect-src 'self'; base-uri 'self';"; + # Security headers (note: temporaly unvailable "prefetch-src 'self'; ") + add_header Content-Security-Policy "default-src 'self'; frame-ancestors 'none'; form-action 'self'; manifest-src 'self'; script-src 'self' 'unsafe-inline' 'wasm-unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src data: 'self'; font-src 'self'; connect-src 'self'; base-uri 'self';"; add_header X-Frame-Options "DENY"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff";