From cd88165282da09f2d3dd393201b6a2489ed5f542 Mon Sep 17 00:00:00 2001 From: andryyy Date: Sun, 14 Apr 2019 13:26:53 +0200 Subject: [PATCH] [Nextcloud] Always install under subdomain, minor changes to site config and install script --- data/assets/nextcloud/nextcloud.conf | 6 +-- data/assets/nextcloud/occ | 2 +- data/assets/nextcloud/site.nextcloud.custom | 44 --------------------- helper-scripts/nextcloud.sh | 42 ++++++++------------ 4 files changed, 21 insertions(+), 73 deletions(-) delete mode 100644 data/assets/nextcloud/site.nextcloud.custom diff --git a/data/assets/nextcloud/nextcloud.conf b/data/assets/nextcloud/nextcloud.conf index cf90a32b0..243cc4066 100644 --- a/data/assets/nextcloud/nextcloud.conf +++ b/data/assets/nextcloud/nextcloud.conf @@ -75,7 +75,7 @@ server { deny all; } - location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+)\.php(?:$|/) { + location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|oc[ms]-provider/.+)\.php(?:$|/) { fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; @@ -90,12 +90,12 @@ server { fastcgi_read_timeout 1200; } - location ~ ^/(?:updater|ocs-provider)(?:$|/) { + location ~ ^/(?:updater|oc[ms]-provider)(?:$|/) { try_files $uri/ =404; index index.php; } - location ~ \.(?:css|js|woff|svg|gif)$ { + location ~ \.(?:css|js|woff2?|svg|gif)$ { try_files $uri /index.php$uri$is_args$args; add_header Cache-Control "public, max-age=15778463"; add_header X-Content-Type-Options nosniff; diff --git a/data/assets/nextcloud/occ b/data/assets/nextcloud/occ index 2ae080012..5113ac01c 100755 --- a/data/assets/nextcloud/occ +++ b/data/assets/nextcloud/occ @@ -1,2 +1,2 @@ #!/bin/bash -docker exec -it -u www-data $(docker ps -f name=php-fpm-mailcow -q) /web/nextcloud/occ ${@} +docker exec -it -u www-data $(docker ps -f name=php-fpm-mailcow -q) php /web/nextcloud/occ ${@} diff --git a/data/assets/nextcloud/site.nextcloud.custom b/data/assets/nextcloud/site.nextcloud.custom deleted file mode 100644 index 6ac299020..000000000 --- a/data/assets/nextcloud/site.nextcloud.custom +++ /dev/null @@ -1,44 +0,0 @@ - location ^~ /nextcloud { - location /nextcloud { - rewrite ^ /nextcloud/index.php$uri; - } - location ~ ^/nextcloud/(?:build|tests|config|lib|3rdparty|templates|data)/ { - deny all; - } - location ~ ^/nextcloud/(?:\.|autotest|occ|issue|indie|db_|console) { - deny all; - } - location ~ ^/nextcloud/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+)\.php(?:$|/) { - fastcgi_split_path_info ^(.+\.php)(/.*)$; - include fastcgi_params; - fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; - fastcgi_param PATH_INFO $fastcgi_path_info; - fastcgi_param HTTPS on; - fastcgi_param modHeadersAvailable true; - fastcgi_param front_controller_active true; - fastcgi_pass phpfpm:9002; - fastcgi_intercept_errors on; - fastcgi_request_buffering off; - client_max_body_size 0; - fastcgi_read_timeout 1200; - } - location ~ ^/nextcloud/(?:updater|ocs-provider)(?:$|/) { - try_files $uri/ =404; - index index.php; - } - location ~ \.(?:css|js|woff|svg|gif)$ { - try_files $uri /nextcloud/index.php$uri$is_args$args; - add_header Cache-Control "public, max-age=15778463"; - add_header X-Content-Type-Options nosniff; - add_header X-XSS-Protection "1; mode=block"; - add_header X-Robots-Tag none; - add_header X-Download-Options noopen; - add_header X-Permitted-Cross-Domain-Policies none; - add_header X-Frame-Options "SAMEORIGIN"; - access_log off; - } - location ~ \.(?:png|html|ttf|ico|jpg|jpeg)$ { - try_files $uri /nextcloud/index.php$uri$is_args$args; - access_log off; - } - } diff --git a/helper-scripts/nextcloud.sh b/helper-scripts/nextcloud.sh index 3ad9c9b45..131b76390 100755 --- a/helper-scripts/nextcloud.sh +++ b/helper-scripts/nextcloud.sh @@ -83,20 +83,13 @@ elif [[ ${NC_UPDATE} == "y" ]]; then fi elif [[ ${NC_INSTALL} == "y" ]]; then - NC_TYPE= - while [[ ! ${NC_TYPE} =~ ^subfolder$|^subdomain$ ]]; do - read -p "Configure as subdomain or subfolder? [subdomain/subfolder] " NC_TYPE + NC_SUBD= + while [[ -z ${NC_SUBD} ]]; do + read -p "Subdomain to run Nextcloud from [format: nextcloud.domain.tld]: " NC_SUBD done - - if [[ ${NC_TYPE} == "subdomain" ]]; then - NC_SUBD= - while [[ -z ${NC_SUBD} ]]; do - read -p "Which subdomain? [format: nextcloud.domain.tld] " NC_SUBD - done - if ! ping -q -c2 ${NC_SUBD} > /dev/null 2>&1 ; then - read -p "Cannot ping subdomain, continue anyway? [y|N] " NC_CONT_FAIL - [[ ! ${NC_CONT_FAIL,,} =~ ^(yes|y)$ ]] && { echo "Ok, exiting..."; exit 1; } - fi + if ! ping -q -c2 ${NC_SUBD} > /dev/null 2>&1 ; then + read -p "Cannot ping subdomain, continue anyway? [y|N] " NC_CONT_FAIL + [[ ! ${NC_CONT_FAIL,,} =~ ^(yes|y)$ ]] && { echo "Ok, exiting..."; exit 1; } fi ADMIN_NC_PASS=$(