РЕДАКТИРОВАТЬ: ИСПРАВЛЕНО
Ну, после того, как я наткнулся на этот сайт и Google в течение нескольких часов, я нашел проблему:
Неверный код:
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
Хороший код:
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com%{REQUEST_URI} [L,R=301]
Кажется, что REQUEST_URI не работает как $ 1 ... поэтому я изучаю mod_rewrite сложным способом.
Вопрос:
Условия:
Проблема:
Страницы, не входящие в www.domain.com, теряют свои SEO-URL и возвращаются кисходные переменные php:
Пример.
SEO-URL: www.domain.com / Video + 1234
URL NonWWW: domain.com / Video + 1234
Результат (адресная строка браузера):
www.domain.com / index.php? Video = 1234
Желаемый:
www.domain.com / Video + 1234
Как заставить сервер сохранить старую форму?
.htaccess фрагмент:
RewriteEngine On
# RewriteBase /
RewriteRule ^Video\-(.+)\+([0-9]+)$ index.php?video=$2
RewriteCond %{HTTP_HOST} !^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]