提问人:Programming Caveman 提问时间:10/10/2023 最后编辑:Programming Caveman 更新时间:10/10/2023 访问量:35
Apache在选择为SSL配置的VirtualHost(端口443)时完全忽略ServerName指令
Apache completely ignores ServerName directive when choosing VirtualHost configured for SSL (port 443)
问:
我已经为此工作了一整天,我什至问了 ChatGPT,但我找不到该死的解决方案。为什么 Apache 在选择为 SSL(端口 443)配置的 VirtualHost 时完全忽略了 ServerName 指令。 当我去 htps://siteB.com 时,它会加载siteA的SSL证书,但看起来很糟糕。它应该使用最后一个 VirtualHost 和 siteB.com 重定向。我尝试了数十种不同的组合,但都被卡住了。它看起来像一个该死的错误。还是我错了?请帮忙。
# ----- test.siteA.com -----
<VirtualHost *:80>
ServerName test.siteA.com
DocumentRoot "c:/htdocs"
<Directory "c:/htdocs">
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
# ----- test.siteA.com -----
<VirtualHost *:443>
ServerName test.siteA.com
DocumentRoot "c:/htdocs"
<Directory "c:/htdocs">
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile "c:/Apache24/Certs/siteA.com.crt.pem"
SSLCertificateKeyFile "c:/Apache24/Certs/siteA.com.key.pem"
SSLCertificateChainFile "c:/Apache24/Certs/siteA.com.ca.pem"
</VirtualHost>
# ----- siteB.com -----
<VirtualHost *:80>
ServerName siteB.com
DocumentRoot "C:\htdocs2"
<Directory "C:\htdocs2">
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
# ----- siteB.com -----
<VirtualHost *:443>
ServerName siteB.com
Redirect permanent / http://siteB.com
</VirtualHost>
答: 暂无答案
评论