Снова .htaccess

Сейчас для корневой директории движка такой .htaccess

AddDefaultCharset UTF-8
Options -Indexes
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php

надо чтобы перенаправлялось с www.site.ru на site.ru (без www)

Изменил .htaccess на такой:

AddDefaultCharset UTF-8
Options -Indexes
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.ru$ [NC]
RewriteRule ^(.*)$ site.ru/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php

При этом навигация по сайту вся работает, все «редиректица» на site.ru
но авторизация на сайт перестает функционировать, т.е. вводишь правильно имя и пароль но авторизация не проходит, возвращает снова к окну авторизации, убираешь строки «редиректа» все начинает работать но основной сайт самособой становится www.site.ru

пробовал в config сайта менять переменную cookie_host на site.ru — не помогло,

в логах пусто, ошибок нет никаких.
Что может быть?

8 комментариев

avatar

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

во первых настройки должны быть такие, а во вторых
в конфиге сайта должно быть написано
$config['path']['root']['web'] = 'http://site.ru';
avatar
К сожалению ситуация не изменилась :(
avatar
алгоритм верный, необходимо искать локальную проблему на вашем сайте!
avatar
Решилось. .htaccess оставил первоначальный, поправил config.local.php:
$config['path']['root']['web'] = 'http://site.ru';
avatar
ну я разве не об этом писал? )))
просто видимо надо было еще и кеш сбросить!
avatar
Спасибо
avatar
Столкнулся с подобной проблемой
Долго мучил разные способы редиректа через .htcaccess но сработал именно ваш метод)
avatar
Привет парни!
решыл даную проблему на 0.5.1, сделал так
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.