【问题标题】:ReverseProxy with Apache/Tomcat Multiple DNS, single webapp with SSL使用 Apache/Tomcat 的 ReverseProxy 多个 DNS,使用 SSL 的单个 webapp
【发布时间】:2018-02-23 00:56:02
【问题描述】:

我几乎是设置服务器的新手,但遇到了问题。我有一个 Ubuntu 16.04 VPS 并安装了 Apache2 和 Tomcat7。我正在为 SSL 使用 LetsEncrypt 和 Certbot。我有一个部署为 ROOT.war 的 web 应用程序。这个 webapp 服务于 2 个不同的用户组,我已经实现了一个“多站点”解决方案,它检查传入的 DNS 并相应地过滤数据(以及 UI 更改)。所以我有 www.sitea.com 和 www.siteb.com 都指向本地主机。这是我的 000-default.comf

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-default-le-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>

因此,对于初始配置,我使用 Certbot 的 Apache 插件为 sitea 配置 SSL(siteb 在不同的服务器上生产)。这似乎工作正常。现在,当我更改 A 记录以将 siteb 的 DNS 指向新服务器时,我从 Apache 得到 503。我确实返回并使用 Certbot 获得了 2 个证书,每个 DNS 一个。任何帮助将不胜感激。

【问题讨论】:

    标签: apache tomcat ssl configuration reverse-proxy


    【解决方案1】:

    刚刚偶然发现答案,需要添加 ServerAlias 并且一切正常。

    所以

    ServerName sitea.com
    ServerAlias www.sitea.com
    

    【讨论】:

      猜你喜欢
      • 2011-06-07
      • 1970-01-01
      • 1970-01-01
      • 2012-04-27
      • 2012-10-18
      • 2019-04-21
      • 2018-10-28
      • 2015-04-01
      • 1970-01-01
      相关资源
      最近更新 更多