gpt4 book ai didi

.htaccess - 从非 www 重定向到 www 并强制使用 SSL

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

我想强制所有 http 流量到 https,并且总是强制 www.

这是我目前所拥有的:

RewriteCond %{SERVER_PORT} 80 
RewriteCond %{HTTP_HOST} ^mydomain\.com
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

当 url 不包含 www 时,这似乎可以正常工作。所以http://mydomain.com正确重定向到 https://www.mydomain.com .

但是,当存在 www 部分时,它无法正确重定向到 https。所以,www.mydomain.com 没有重定向到 https://www.mydomain.com

编辑我有两个重写 block :

# Force ssl
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# redirect non-www to www
RewriteCond %{HTTP_HOST} ^mydomain\.com
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

不知道这是否可以接受,但它有效

最佳答案

在重写规则中使用您的 域名 而不是 HTTP_HOST 这样无论 www 是否存在都无关紧要并且您可以使用 1 条规则。您可以有两个重写规则,但只需使用 OR。我想您要找的是这个。

# always redirect to www and/or https
RewriteCond %{HTTP_HOST} ^mydomain\.com [NC,OR]
RewriteCond %{HTTPS} !^on$
RewriteRule ^(.*) https://www.mydomain.com/$1 [R=301,L]

关于.htaccess - 从非 www 重定向到 www 并强制使用 SSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22248960/

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