gpt4 book ai didi

Apache ssl 裸域找不到 VirtualHost

转载 作者:太空宇宙 更新时间:2023-11-03 15:11:00 25 4
gpt4 key购买 nike

我们有一个带有 4 个 SAN 的 UC 证书。其中一个 SAN 是裸域名,即 domain.com。

我们的 ssl 工作正常,并指向每个 SAN 的正确虚拟主机目录,主域名或裸域名除外。出于某种我无法弄清楚的原因,当请求裸域时,Apache 正在从主 httpd.conf 文件提供默认的 DocumentRoot。

我们在 Linux 中运行 Apache 2.4。httpd.conf 文件包括 conf.d/目录中的 *.conf 文件。

我们创建了一个名为virtual.conf的文件,内容为:

 <VirtualHost *:80>
DocumentRoot /data/www/html/domain/public
ServerName domain.com
ServerAlias *.domain.com
SetEnv ZF2_PATH "/data/www/html/zf2/library"

<Directory /data/www/html/domain/public >
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

<VirtualHost *:443>
DocumentRoot /data/www/html/domain/public
ServerName domain.com
SetEnv ZF2_PATH "/data/www/html/zf2/library"

SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/domain_com.crt
SSLCertificateKeyFile /etc/pki/tls/private/leaders.key

<Directory /data/www/html/domain/public >
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>

<VirtualHost *:443>
DocumentRoot /data/www/html/domain/public
ServerName va.domain.com
SetEnv ZF2_PATH "/data/www/html/zf2/library"

SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/domain_com.crt
SSLCertificateKeyFile /etc/pki/tls/private/leaders.key
<Directory /data/www/html/domain/public >
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>

目前我们让每个虚拟主机都指向服务器上的同一个文件夹。

谁能明白为什么要调用 https://domain.com导致 Apache 提供默认的 DocumentRoot 位置(位于 httpd.conf 中)而不是此 VirtualHost 指令中指定的目录?

谢谢。

最佳答案

根据 article在 Apache 的 wiki 上,您无法为 SSL 配置命名虚拟主机。问题是要确定必须引用哪个虚拟主机,您必须从 HTTP 请求中获得“主机” header 的内容。但是,在 SSL 的情况下,您的请求是加密的,因此您没有该信息。这就是为什么虚拟主机匹配依赖于IP(或接口(interface))地址(IP-based Virtual Host)。

不过,好消息是您可能有多个虚拟主机(当然还有 IP 地址),以防您的子域属于同一个域(就像本文示例中的 one.example.com , two.example.com 等)。

关于Apache ssl 裸域找不到 VirtualHost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22082655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com