私はサーバのセットアップでかなり初心者ですが、問題が発生しています。私はUbuntu 16.04 VPSを持っており、Apache2とTomcat7をインストールしています。 SSL用にLetsEncryptとCertbotを使用しています。私はROOT.warとして展開する単一のwebappを持っています。このWebアプリケーションは2つの異なるユーザーグループにサービスを提供し、受信DNSをチェックし、それに応じてデータをフィルタリングする(UIの変更とともに)「マルチサイト」ソリューションを実装しました。ですから、私はwww.sitea.comとwww.siteb.comの両方がlocalhostを指しています。ここで私は(シティアのためにSSLを設定するには、CertbotのApacheプラグインを使用する初期設定のため、だから私の000-default.comfApache/Tomcatを使用したReverseProxy複数のDNS、SSLを使用した単一のWebアプリケーション
Listen 80
<VirtualHost *:80>
ServerName www.sitea.com
ProxyPreserveHost On
ProxyPass/http://127.0.0.1:8080/
ProxyPassReverse/http://127.0.0.1:8080/
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.sitea.com
RewriteRule^https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
<VirtualHost *:80>
ServerName www.siteb.com
ProxyPreserveHost On
ProxyPass/http://127.0.0.1:8080/
ProxyPassReverse/http://127.0.0.1:8080/
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.siteb.com
RewriteRule^https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
そして、私の000-デフォルトルssl.confの
<IfModule mod_ssl.c>
<VirtualHost *:443>
ProxyPreserveHost On
ProxyPass/http://127.0.0.1:8080/
ProxyPassReverse/http://127.0.0.1:8080/
SSLCertificateFile /etc/letsencrypt/live/www.sitea.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.sitea.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
ServerName www.sitea.com
</VirtualHost>
<VirtualHost *:443>
ProxyPreserveHost On
ProxyPass/http://127.0.0.1:8080/
ProxyPassReverse/http://127.0.0.1:8080/
SSLCertificateFile /etc/letsencrypt/live/www.siteb.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.siteb.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
ServerName www.siteb.com
</VirtualHost>
</IfModule>
ですsitebは別のサーバー上で稼動していました)。これはうまくいくようです。これでAレコードをsitebのDNSを新しいサーバに向けるように変更すると、Apacheから503が得られます。私は戻ってCertbotを使って各DNSに1つずつ、2つの証明書を取得しました。どんな助けもありがとう。