使用HTTP或HTTPS前缀将* .domain.com重定向到www.domain.com

时间:2012-03-15 16:14:50

标签: apache .htaccess redirect

下面的代码是一个重定向脚本,如果它们不在其上,则会将我网站的访问者重定向到www.domain.com(例如,如果他们在domain.com或somesub.domain.com上)。我修改了它,将它们重定向到HTTPS或HTTP,具体取决于它们键入或链接的热链接。

它正在工作,但我猜测可能有更简单的方法来做到这一点,或者有一些改进的余地。有人可以仔细检查/评论吗?非常感谢提前。

# redirect any HTTP traffic that is not http://www.domain.com/*
RewriteEngine On
RewriteCond %{SERVER_PORT} ^80$
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

# redirect any HTTPS traffic that is not https://www.domain.com/*  
RewriteEngine On
RewriteCond %{SERVER_PORT} ^443$
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L]

1 个答案:

答案 0 :(得分:3)

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule .* http%1://www.domain.com/$0 [R=301,L]