gpt4 book ai didi

使用 SSL IP 重写 Apache

转载 作者:太空宇宙 更新时间:2023-11-03 14:38:41 24 4
gpt4 key购买 nike

在大多数情况下,我的条件在重定向到我的安全站点 https://mysite.example.com 时有效,除非用户输入 https://10.10.10.10在这种情况下,会发生证书错误,这是可以预料的。但如果用户决定继续,我想重定向到我的安全站点。这可能吗。请参阅下面我的代码。

RewriteEngine On
RewriteCond %{HTTP_HOST} ^10\.10\.10\.10$
RewriteRule ^(.*)$ `https://mysite.example.com`/$1 [L,R=301]
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

最佳答案

虽然我不确定 %{HTTP_HOST} 可用于测试 IP(如果主机是 IP,Apache 可能会认为没有主机),并假设您测试了规则从你的问题来看它没有用,肯定有改进的余地。

您的 SSL 证书仅与一个主机名相关联(除非您有通配符证书,但那将是一种边缘情况),因此了解您的网站是否通过其 IP 或其他域别名访问并不重要;如果您希望将其重定向到 https 和特定主机名,那么这一切都很重要。

顺便说一句,如果您更改 IP,则必须同时更改 DNS 和重写规则,这并不理想。

所以让我们简化一下:

RewriteEngine On
RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^mysite.example.com$
RewriteRule (.*) https://mysite.example.com%{REQUEST_URI} [L,R=301]

请注意,您还需要在目标中硬编码 mysite.example.com,因为如果满足第二个条件,它可能是 IP 或错误的主机。

关于使用 SSL IP 重写 Apache,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45204373/

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