nginxconfig.io-{{ getDomains().join(',') }}.zip
{{ data.directory_nginx.replace(endingSlashRegex, '') }}
Copy to clipboard
cd {{ data.directory_nginx.replace(endingSlashRegex, '') }}
tar -czvf nginx_$(date +'%F_%H-%M-%S').tar.gz nginx.conf sites-available/ sites-enabled/ nginxconfig.io/
unzip -o nginxconfig.io-{{ getDomains().join(',') }}.zip sudo apt-get install unzip
openssl dhparam -out {{ data.directory_nginx }}dhparam.pem {{ sslProfiles[ data.ssl_profile ].dh_param_size }}
mkdir -p {{ data.directory_letsencrypt.replace(endingSlashRegex, '') }}
chown {{ data.user }} {{ data.directory_letsencrypt.replace(endingSlashRegex, '') }}
sed -i -r 's/(listen .*443)/\1;#/g; s/(ssl_(certificate|certificate_key|trusted_certificate) )/#;#\1/g' {{ data.directory_nginx }}nginx.conf {{ data.directory_nginx }}sites-{{ isSymlink() ? 'available' : 'enabled' }}/{{ _domain }}.conf
sudo nginx -t && sudo systemctl reload nginx
certbot certonly --webroot -d {{ _domain }} -d www.{{ _domain }} -d cdn.{{ _domain }} --email {{ data.sites[_site].email ? data.sites[_site].email : 'info@' + _domain }} -w {{ data.directory_letsencrypt.replace(endingSlashRegex, '') }} -n --agree-tos --force-renewal
sed -i -r 's/#?;#//g' {{ data.directory_nginx }}nginx.conf {{ data.directory_nginx }}sites-{{ isSymlink() ? 'available' : 'enabled' }}/{{ _domain }}.conf
sudo nginx -t && sudo systemctl reload nginx
echo -e '#!/bin/bash\nnginx -t && systemctl reload nginx' | sudo tee /etc/letsencrypt/renewal-hooks/post/nginx-reload.sh
sudo chmod a+x /etc/letsencrypt/renewal-hooks/post/nginx-reload.sh
sudo nginx -t && sudo systemctl reload nginx