Необходимо настроить на сайте редирект с www на без. Вроде все понятно, но есть одна сложность.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
RewriteEngine On
Options +FollowSymlinks
# редирект с www на без www
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Мешают первые две строчки, но их убрать не могу поскольку после их удаление не открываются вложенные страницы - только главная работает. А с ними получается по запросу, скажем www.domen.ru/inner/ меня редиректит на domen.ru/index.php , а должно с www.domen.ru/inner/ на domen.ru/inner/
Вообще полный код выглядит так:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
RewriteEngine On
Options +FollowSymlinks
# редирект с index.php на корень
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://domen.ru [R=301,L]
# редирект со слешем на без слеша на конце
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule .* http://%{HTTP_HOST}%1 [R=301,L,QSA]
# редирект с www на без www
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
В этом случае со всех вложенных просто попадаю на главную т.е. при запросе www.domen.ru/inner/ попадаю на domen.ru а должен на domen.ru/inner (без www и без "\" на конце).
Может кто знает как это обойти? И есть ли хорошие ресурсы где можно подробно разобрать правила настройки .htaccess?