deb/apache-register-blog.bash
author Oleksandr Gavenko <gavenkoa@gmail.com>
Sun, 07 May 2023 13:04:33 +0300
changeset 21 52f40bd9e114
parent 14 719ced1ac5c3
child 31 461eed8e7463
permissions -rw-r--r--
Integrated Lets Encrypt into all sites.

#!/bin/bash

set -x

# To meet uploading requirements.
apt install rsync

d=blog
mkdir -p /srv/www/$d
chown user:user /srv/www/$d

cat <<EOF >/etc/apache2/sites-available/$d.conf
<VirtualHost $d.defun.work:*>
    DocumentRoot /srv/www/$d
    ServerName $d.defun.work

    <Directory "/srv/www/$d/">
        Require all granted
    </Directory>
</VirtualHost>

<IfModule mod_ssl.c>
  <VirtualHost $d.defun.work:443>
	DocumentRoot /srv/www/$d
    ServerName $d.defun.work

    <Directory "/srv/www/$d/">
        Require all granted
    </Directory>

    SSLCertificateFile /etc/letsencrypt/live/defun.work/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/defun.work/privkey.pem
    Include /etc/letsencrypt/options-ssl-apache.conf
  </VirtualHost>
</IfModule>
EOF

a2ensite $d
service apache2 reload