#!/bin/bash [[ ! -d /var/www/html ]] && echo /var/www/html/ does not exist && exit 1 #TODO check correspondance of vhosts.lst and folders in /data/www/ for vhost in `grep -v ^# /etc/nginx/vhosts.lst`; do [[ -d /data/www/$vhost ]] && root=/data/www/$vhost || root=/var/www/html cat <<EOF server { listen 443 ssl http2; #listen [::]:443 ssl http2; server_name $vhost; #without includeSubDomains add_header Strict-Transport-Security "max-age=31536000" always; ssl_certificate /etc/dehydrated/certs/$vhost/fullchain.pem; ssl_certificate_key /etc/dehydrated/certs/$vhost/privkey.pem; location / { root $root; index index index.html index.htm; try_files \$uri \$uri/ =404; } autoindex on; error_page 404 = @foobar; location @foobar { return 301 /; } } EOF unset root done; unset vhost