2013-11-18 2 views
1

я пытаюсь перенаправить www.site.ru и site.ru в www.site.ru/ru_RU. Но я не могу заставить его работать.Htaccess не работает для WWW и не-WWW

Options +FollowSymLinks 
<IfModule mod_rewrite.c> 
RewriteEngine on 

RewriteCond %{HTTP_HOST} ^site\.ru$ [NC] 
RewriteRule ^(.*)$ http://www.site.ru/ru_RU [L,R] 
RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC] 
RewriteRule ^(.*)$ http://www.site.ru/ru_RU [L,R] 

RewriteCond %{REQUEST_URI} ^/news 
RewriteRule (.*) /news [QSA] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ index.php?page=$1 [QSA] 
</IfModule> 

Это не перенаправление версии WWW. Может кто-нибудь сказать мне, как сделать этот запрос. Кстати, иногда я прихожу к ситуации, где в firefox это работает, но в IE это не так.

ответ

0

Попробуйте этот код:

Options +FollowSymLinks 
<IfModule mod_rewrite.c> 
RewriteEngine on 

RewriteCond %{HTTP_HOST} ^(www\.)?site\.ru$ [NC] 
RewriteRule ^$ http://www.site.ru/ru_RU [L,R] 

## WHAT IS THIS RULE DOING?? 
# RewriteCond %{REQUEST_URI} ^/news 
# RewriteRule^/news [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ index.php?page=$1 [L,QSA] 

</IfModule> 

кстати мне пришлось закомментировать подозрительный вид 2-ое правило для /news. Если вы можете объяснить, что вы пытаетесь сделать с этим, я могу предложить вам, как его исправить.

0
RewriteCond %{HTTPS} !=on 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/ru_RU [R=permanent,L] 

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