htaccess Redirect + RewriteRule проблема

28
На сайте с 31.10.2009
Offline
116
2394

AddDefaultCharset UTF-8

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]

RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Redirect 301 /montazh.php "http://site.ru/Монтаж"

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ /index.php?page=$1 [L]

Options +FollowSymLinks

Хотелось:

редирект с site.ru/montazh.php на site.ru/Монтаж

При этом сервер должен воспринимать страницу как site.ru/index.php?page=Монтаж

вместо этого _браузер_ показывает страницу вот так:

site.ru/Монтаж?page=montazh.php

Чудеса какие-то =(

Я даже не могу понять, каким образом через rewriterule браузер может узнать о том, что page=montazh.php

И вообще, при чём здесь montazh.php, если редирект на страницу "Монтаж" уже произведён.

Борец за чистоту Интернета.
[umka]
На сайте с 25.05.2008
Offline
456
#1

вместо

Redirect 301 /montazh.php "http://site.ru/Монтаж"

попробуйте

RewriteRule /montazh.php http://site.ru/%D0%9C%D0%BE%D0%BD%D1%82%D0%B0%D0%B6 [R=301,L]

Лог в помощь!
28
На сайте с 31.10.2009
Offline
116
#2
'[umka:
;7071874']вместо
Redirect 301 /montazh.php "http://site.ru/Монтаж"

попробуйте
RewriteRule /montazh.php http://site.ru/%D0%9C%D0%BE%D0%BD%D1%82%D0%B0%D0%B6 [R=301,L]

Спасибо вам огромное, подсказали правильную команду. Не хватало только RewriteBase. =) !

Вот готовый вариант:

AddDefaultCharset UTF-8

Options +FollowSymLinks

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]

RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

RewriteBase /

RewriteRule montazh.php "http://www.zaosmu55.ru/Монтаж" [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ /index.php?page=$1

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий