Apache 未向本地主机提供 HTTPS 服务

Apache 未向本地主机提供 HTTPS 服务

这刚开始成为一个问题(可能是在软件升级之后?)。相关配置位是:

<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName singpolyma.net
    ServerAlias www.singpolyma.net
    RewriteEngine on
    RewriteRule ^/(.*) https://singpolyma.net/$1 [R=301,L]
</VirtualHost>

<VirtualHost 184.107.182.218:443>
    GnuTLSEnable on
    GnuTLSPriorities NORMAL
    GnuTLSCertificateFile /etc/ssl/certs/singpolyma.net2013.crt
    GnuTLSKeyFile /etc/ssl/certs/singpolyma.net2013.key

从非本地盒子的任何位置,这都按预期工作。当我尝试从盒子本身连接时,我得到 apaching 在该 IP 上使用非 HTTPS 以 443 响应。当我运行 curl 并--interface要求它使用与托管该 IP 的接口不同的接口时,它也能正常工作,即使在盒子上也是如此。

因此,当我进行本地请求时,发生了一些奇怪的事情。

答案1

在您的 https 虚拟主机中,您指定了一个 IP 地址来监听连接。因此,连接到主机上任何其他 IP 地址的请求永远不会匹配该虚拟主机。

如果您确实想这样做,您可以在声明中添加第二个 IP 地址<VirtualHost>,或者只是将其设为通配符*:443

相关内容