我一直在寻找完美的301重定向.但我发现了很多解决方案而且不知道什么是最好的.
这就是我想要做的
最佳实践.htacess?
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
这是我的首选代码.至少现在是unil.
替代方式
我还发现了很多其他方法可以重定向HTTP到HTTPS.例如:
1.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Run Code Online (Sandbox Code Playgroud)
错过了一步?不,[R=301,L]这里?
2.
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)
我应该用吗?
RewriteRule ^(.*)$
Run Code Online (Sandbox Code Playgroud)
代替
RewriteRule (.*)
Run Code Online (Sandbox Code Playgroud)
?
3.
RewriteCond %{HTTPS} off
RewriteCond …Run Code Online (Sandbox Code Playgroud)