我正在尝试进行一些重定向,其中https重定向到http以及输入domain.com的任何实例都重定向到www.domain.com。
一个实际的例子是https://domain.com被重定向到http://www.domain.com - 下面是我在.htaccess文件中使用的正则表达式代码。非常感谢你帮助澄清。
RewriteEngine on
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{HTTP_HOST} ^domain.com [NC, OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
答案 0 :(得分:1)
你走在正确的轨道上,只需稍微调整你的规则:
RewriteEngine on
# we handle to domain.com to www.domain.com first
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# then we redirect anything with HTTPS to just HTTP
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
答案 1 :(得分:-1)
这适用于HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}