From a72f6302cfdc3fc1dd11a516cca930042d76b97e Mon Sep 17 00:00:00 2001
From: Adar Nimrod <nimrod@shore.co.il>
Date: Sat, 16 Jan 2021 23:30:27 +0200
Subject: [PATCH] Serve {www,}.shore.co.il on ns4.

Should be faster. Just static files anyway.
---
 conf.d/shore.co.il.conf                       | 31 +++++++++++++
 conf.d/www.shore.co.il.conf                   | 43 +++++++++++++++++++
 docker-compose.yml                            |  5 ++-
 snippets/nextcloud-well-known.conf            | 11 +++++
 snippets/z-push.conf                          | 19 ++++++++
 .../google88c23a5c89fa3cb3.html               |  1 +
 6 files changed, 109 insertions(+), 1 deletion(-)
 create mode 100644 conf.d/shore.co.il.conf
 create mode 100644 conf.d/www.shore.co.il.conf
 create mode 100644 snippets/nextcloud-well-known.conf
 create mode 100644 snippets/z-push.conf
 create mode 100644 www/www.shore.co.il/google88c23a5c89fa3cb3.html

diff --git a/conf.d/shore.co.il.conf b/conf.d/shore.co.il.conf
new file mode 100644
index 0000000..437a1da
--- /dev/null
+++ b/conf.d/shore.co.il.conf
@@ -0,0 +1,31 @@
+map $host $z_push { default z-push; }
+
+server {
+    listen      80;
+    listen      [::]:80;
+    server_name shore.co.il;
+    include     snippets/robots-allow-all.conf;
+    include     snippets/ads-txt.conf;
+    include     snippets/security-txt.conf;
+    location = /        { return 301 https://$host/blog/; }
+    location /repo/     {
+        root            /var/www/www.shore.co.il/;
+        autoindex       on;
+    }
+    include     snippets/redirect-https.conf;
+}
+
+server {
+    listen      443 ssl;
+    listen      [::]:443 ssl;
+    server_name shore.co.il;
+    include     snippets/robots-allow-all.conf;
+    include     snippets/ads-txt.conf;
+    include     snippets/security-txt.conf;
+    include     snippets/ssl.conf;
+    include     snippets/nextcloud-well-known.conf;
+    include     snippets/z-push.conf;
+
+    location = /        { return 301 https://www.shore.co.il/blog/; }
+    include     snippets/redirect-www.conf;
+}
diff --git a/conf.d/www.shore.co.il.conf b/conf.d/www.shore.co.il.conf
new file mode 100644
index 0000000..b62661b
--- /dev/null
+++ b/conf.d/www.shore.co.il.conf
@@ -0,0 +1,43 @@
+server {
+    listen              80;
+    listen              [::]:80;
+    server_name         www.shore.co.il;
+    include             snippets/robots-allow-all.conf;
+    include             snippets/ads-txt.conf;
+    include             snippets/security-txt.conf;
+    location = /        { return 301 https://$host/blog/; }
+    location /repo/     {
+        root            /var/www/www.shore.co.il/;
+        autoindex       on;
+    }
+    include             snippets/redirect-https.conf;
+}
+
+server {
+    listen                  443 ssl;
+    listen                  [::]:443 ssl;
+    server_name             www.shore.co.il;
+    include                 snippets/robots-allow-all.conf;
+    include                 snippets/ads-txt.conf;
+    include                 snippets/security-txt.conf;
+    include                 snippets/ssl.conf;
+    root                    /var/www/www.shore.co.il/;
+    error_page 404          /;
+
+    location /repo/         { autoindex on; }
+    location = /resume      { try_files $uri /resume/resume.html; }
+    location = /resume/     { index resume.html; }
+
+    location = /            { return 301 https://$host/blog/; }
+    location /about         { return 301 https://$host/blog/pages/about-me.html; }
+    location /spam          { return 301 https://$host/blog/pages/spam.html; }
+    location = /blog        {
+        try_files $uri /blog/index.html;
+        charset UTF-8;
+    }
+
+    location /cgit          { return 301 https://git.shore.co.il/explore; }
+    location /cgit/         { return 301 https://git.shore.co.il/explore; }
+    location /git           { return 301 https://git.shore.co.il/explore; }
+    location /git/          { return 301 https://git.shore.co.il/explore; }
+}
diff --git a/docker-compose.yml b/docker-compose.yml
index bf2e183..d01206f 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -5,17 +5,20 @@ services:
     build:
       context: ./
     # command: ["nginx", "-g", "daemon off;"]
-    hostname: &hostname shore.co.il
+    hostname: &hostname www.shore.co.il
     networks:
       default:
         aliases:
           - *hostname
           - autoconfig.shore.co.il
+          - registry.shore.co.il
     ports:
       - '80:80'
       - '443:443'
     restart: always
     volumes:
+      - '/var/www/www.shore.co.il/blog:/var/www/www.shore.co.il/blog:ro'
+      - '/var/www/www.shore.co.il/resume:/var/www/www.shore.co.il/resume:ro'
       - '/var/www/www.shore.co.il/.well-known/acme-challenge:/var/www/www.shore.co.il/.well-known/acme-challenge:ro'
       - '/var/ssl/site.key:/var/ssl/site.key:ro'
       - '/var/ssl/site.crt:/var/ssl/site.crt:ro'
diff --git a/snippets/nextcloud-well-known.conf b/snippets/nextcloud-well-known.conf
new file mode 100644
index 0000000..f615565
--- /dev/null
+++ b/snippets/nextcloud-well-known.conf
@@ -0,0 +1,11 @@
+location /.well-known/caldav {
+    return  301 https://nextcloud.shore.co.il/remote.php/dav;
+}
+
+location /.well-known/carddav {
+    return  301 https://nextcloud.shore.co.il/remote.php/dav;
+}
+
+location /.well-known/webfinger {
+    return  301 https://nextcloud.shore.co.il/public.php?service=webfinger;
+}
diff --git a/snippets/z-push.conf b/snippets/z-push.conf
new file mode 100644
index 0000000..ccc2147
--- /dev/null
+++ b/snippets/z-push.conf
@@ -0,0 +1,19 @@
+location /AutoDiscover/ {
+    proxy_pass          https://$z_push$request_uri;
+    include             snippets/proxy-headers.conf;
+}
+
+location /Autodiscover/ {
+    proxy_pass          https://$z_push$request_uri;
+    include             snippets/proxy-headers.conf;
+}
+
+location /autodiscover/ {
+    proxy_pass          https://$z_push$request_uri;
+    include             snippets/proxy-headers.conf;
+}
+
+location /Microsoft-Server-ActiveSync {
+    proxy_pass          https://$z_push$request_uri;
+    include             snippets/proxy-headers.conf;
+}
diff --git a/www/www.shore.co.il/google88c23a5c89fa3cb3.html b/www/www.shore.co.il/google88c23a5c89fa3cb3.html
new file mode 100644
index 0000000..ceace0b
--- /dev/null
+++ b/www/www.shore.co.il/google88c23a5c89fa3cb3.html
@@ -0,0 +1 @@
+google-site-verification: google88c23a5c89fa3cb3.html
\ No newline at end of file
-- 
GitLab