我知道它已经重复了很多次,但是我保证我尝试了许多不同的方法,但仍然对我不起作用。
我有一个https://example.com,它从http和www重定向,但没有覆盖所有URL。
我要重定向
www.example.com
至https://example.com
https://www.example.com
至https://example.com
https://www.example.com/about
至https://example.com/about
https://www.example.com/#blah
至https://example.com/#blah
这是我上次尝试的.htaccess
代码
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} =off [OR]
RewriteCond %{HTTP_HOST} ^www.example\.com$
RewriteRule ^(.*)$ "https://example.com/$1" [R=301,L]
</IfModule>
----------------------已更新------------------
我不知道它是如何工作的。我替换了许多不同的规则,但这仅是一条规则。
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [L,R=301]
答案 0 :(得分:0)
将您的规则更改为:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule (.*) https://example.com/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://example.com/$1 [R=301,L]
</IfModule>