Перенаправление * .domain.com на www.domain.com с префиксом HTTP или HTTPS - PullRequest
3 голосов
/ 15 марта 2012

Приведенный ниже код представляет собой скрипт перенаправления, который перенаправляет посетителей моего веб-сайта на сайт 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 Ответ

3 голосов
/ 15 марта 2012
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule .* http%1://www.domain.com/$0 [R=301,L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...