.htaccess 完成域重定向(301)-所有版本到https://example.com

.htaccess 完成域重定向(301)-所有版本到https://example.com,.htaccess,http,redirect,.htaccess,Http,Redirect,希望以最有利于搜索引擎优化的方式,将整个域重定向到其所请求的任何变体(http://、、和www.)的版本 (我知道有很多类似的Q/a,但它们似乎很具体,所以我决定从一篇干净的帖子开始) 我目前正在使用: RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://example.com/$1 [R,L] 但有人告诉我重定向不是301,它也不会重定向。版本 有没有一种简单的方法可以一次完成这一切 提前谢

希望以最有利于搜索引擎优化的方式,将整个域重定向到其所请求的任何变体(http://、、和www.)的版本

(我知道有很多类似的Q/a,但它们似乎很具体,所以我决定从一篇干净的帖子开始)

我目前正在使用:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
但有人告诉我重定向不是301,它也不会重定向。版本

有没有一种简单的方法可以一次完成这一切

提前谢谢你


注意

您可以在站点根目录中使用单个规则。htaccess可用于此:

RewriteEngine On

# remove www and turn on https in same rule
RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
RewriteCond %{HTTPS} !on
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L,NE]

使用新浏览器测试更改。

由于
%{SERVER\u PORT}80
位的原因,它不会重定向。301需要
[R=301,L]
。感谢您在@anubhava的快速回复。它正在工作!如果你跑得太快了,我需要等几分钟。