diff options
author | root@culturestrings <root@culturestrings> | 2020-06-14 21:39:42 +0000 |
---|---|---|
committer | root@culturestrings <root@culturestrings> | 2020-06-14 21:39:42 +0000 |
commit | 281232b3c94181232a350f7162475c6ac9704d43 (patch) | |
tree | 90dae3003bf6d9939a6a1b0b63faf6a25018a02e /public/fs/etc/nginx/vhosts.d/nginx-primary-zone-cfg.sh | |
parent | cc67b0cddd44756394b21b80f31e7829821babec (diff) | |
download | culturestrings-281232b3c94181232a350f7162475c6ac9704d43.tar.bz2 culturestrings-281232b3c94181232a350f7162475c6ac9704d43.tar.xz |
nginx: make the vhost configuration files site-agnostic.
Diffstat (limited to 'public/fs/etc/nginx/vhosts.d/nginx-primary-zone-cfg.sh')
-rwxr-xr-x | public/fs/etc/nginx/vhosts.d/nginx-primary-zone-cfg.sh | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/public/fs/etc/nginx/vhosts.d/nginx-primary-zone-cfg.sh b/public/fs/etc/nginx/vhosts.d/nginx-primary-zone-cfg.sh new file mode 100755 index 0000000..f325fe1 --- /dev/null +++ b/public/fs/etc/nginx/vhosts.d/nginx-primary-zone-cfg.sh @@ -0,0 +1,59 @@ +#!/bin/sh + +set -eu + +IFS=',' + +sitezone="$1" +sitedirs="$2" + +cfg_script="$0" +cfg_srcdir=$(cd -- "${cfg_script%/*}/" ; pwd -P) + +# header +cat << _EOF +server { + listen [::]:80; + server_name ${sitezone}; + return 301 https://\$server_name\$request_uri; +} + +server { + listen [::]:443; + server_name ${sitezone}; + +_EOF + +# indexed locations +for sitedir in ${sitedirs}; do + +cat << _EOF + location /${sitedir} { + root /srv/www/htdocs/\$host; + fancyindex on; + ssi on; + } + +_EOF + +done + +# root directory +cat << _EOF + location / { + root /srv/www/htdocs/\$host; + index index.html index.htm; + ssi on; + } + +_EOF + +# ssl and footer +cat << _EOF + ssl_certificate /srv/webroot/${sitezone}/ssl/fullchain.pem; + ssl_certificate_key /srv/webroot/${sitezone}/ssl/privkey.pem; + ssl_trusted_certificate /srv/webroot/${sitezone}/ssl/chain.pem; + + include conf.d/ssl_params; +} +_EOF |