2013-07-24 1 views
2

Я действительно застрял в преобразовании этого красивого сценария htaccess (правила), который заставляет не-www ссылаться на www url, рассматривая http или https, что он отлично работает, но я не могу сделать он работает наоборот от www до не-www, можете ли вы мне помочь?htaccess force www to non-www с учетом http или https

RewriteCond %{HTTP_HOST} !^www\. 
RewriteCond %{HTTPS}s ^on(s)| 
RewriteRule^http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

Спасибо Я действительно застрял в этих символах htaccess!

+0

возможно дубликат [Htaccess перенаправить для не-WWW и HTTP и HTTPS] (http://stackoverflow.com/questions/2015159/htaccess-redirect-for -нон-WWW-как-клиент-и-HTTPS) – spinsch

ответ

4

Для изготовления www to non-www код выше не будет работать из-за того, как работает функция перехвата переменных в RewriteCond. Вам нужно разбить их на 2 правила, как это:

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^http://%1%{REQUEST_URI} [R=301,L] 

RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^https://%1%{REQUEST_URI} [R=301,L] 
Смежные вопросы