htaccess 无需重定向 HTTP 和 HTTPS 非 www 到 HTTPS www

htaccess 无需重定向 HTTP 和 HTTPS 非 www 到 HTTPS www

我有从 http 到 https 以及从非 www 到https://www 请帮我解决这个问题吗?

这是我的 htaccess 代码:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteCond %{REQUEST_URI} somefolder
RewriteRule ^(.*)$ https://www.domain.com/somefolder/$1 [R,L]
# Ensure we are using HTTPS version of the site.
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://www\.%{HTTP_HOST}/$1 [R=301,L]

答案1

对于后一条规则,使用:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://www\.%{HTTP_HOST}/$1 [R=301,L]

因此现在它会从所有非 www 主机重定向到https://www,因为目标网址已更改。

相关内容