我正在努力完成这个配置,这可能很简单。我有一个正在运行的通配符 SSL 证书。我已将网站设置为在 SSL 下在 domain.com 上运行。
现在,我需要在同一台服务器上使用同一个 SSL 证书运行多个子域名 (*.domain.com)。应该不难,对吧?但是,我没法实现。
重点是,第一个配置是另一个 Tomcat 服务器,它为另一个站点提供服务并监听 domain.com 和 www.domain.com。另一个配置监听 *.domain.com 并从另一个 Tomcat 服务器提取内容。
我已经尝试过使用 mod_rewrite 进行整个设置,但就是看不出我做错了什么。非常感谢任何帮助。
这是我在 Apache 2.2 中的配置:
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile ...
SSLCertificateKeyFile ...
SSLCertificateChainFile ...
ServerName domain.com
ServerAlias www.domain.com
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass / ajp://localhost:8010/
ProxyPassReverse / ajp://localhost:8010/
</VirtualHost>
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile ...
SSLCertificateKeyFile ...
SSLCertificateChainFile ...
ServerName domain.com
ServerAlias *.domain.com
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/
</VirtualHost>
谢谢。
答案1
已修复。问题出在我的 Apache 2.2 没有设置 VirtualHostName *:443。Apache 只为端口 80 设置了此项。
对于 Ubuntu 用户来说,这是在 ports.conf 文件中!