/etc/Apache2/sites-enabled
とexample.com.conf
があるときにexample.com-le-ssl.conf
を編集する適切な方法は何ですか?
何かを変更するときに両方のファイルを編集する必要がありますか?または、たった1つだけでcertbot-auto
を強制的に修正しますか?
あなたの質問の正解はわかりませんが、次の簡略化をお勧めします。
1。すべてのユーザーにHTTPSの使用を強制します。 HTTP VirtualHostの定義は次のようになります。
<VirtualHost *:80>
ServerName example.com
# Redirect Requests to HTTPS
Redirect permanent "/" "https://example.com/"
ErrorLog ${Apache_LOG_DIR}/example.com.error.log
CustomLog ${Apache_LOG_DIR}/example.com.access.log combined
</VirtualHost>
この方法では、HTTPS VirtualHostの構成のみを維持する必要があります。
2。すぐに generate SSL証明書ファイルを「Let's Encrypt」し、それらをHTTPSVirtualHost:
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerName example.com
ServerAdmin [email protected]
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
ErrorLog ${Apache_LOG_DIR}/example.com.error.log
CustomLog ${Apache_LOG_DIR}/example.com.access.log combined
DocumentRoot /var/www/html
<Directory /var/www/html>
# etc...
</Directory>
# etc...
</VirtualHost>
</IfModule>
3。両方のVirtualHostsの定義を単一の構成ファイルに挿入します。
<VirtualHost *:80>
# etc...
</VirtualHost>
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
# etc...
</VirtualHost>
</IfModule>
このファイルは/etc/Apache2/sites-available/example.com.conf
である可能性があります。
4。a2dissite
不要なVirtualHosts(それぞれa2ensite
必要なVirtualHost)を忘れずにApacheを再起動してください。
5。ルートのcrontabを編集し、たとえば毎週証明書を更新しようとするジョブを追加します。 Sudo crontab -e
と入力し、この行を下部に追加します。
0 3 * * 0 /usr/bin/letsencrypt renew >> /var/log/letsencrypt-renew.week-$(date +%W).log 2>&1
それでおしまい。