[.htaccess] А что отдает то mod_rewrite самому скрипту?

[Удален]
845

Здравствуйте.

Встал вопрос организации ЧПУ.

Есть страницы такого типа:

index.php?major=index - главная страница

index.php?major=error&minor=404 - страница ошибки, в данном случае, 404.

index.php?major=blog&minor=article&id=9 - страница 9 статьи блога.

Если я напишу реврайт с index.php?major=([a-z]+) $1

Что получит в итоге скрипт? Он получит $_GET['major'], ведь URI то будет уже другим, в итоге и major не будет. Или этот реврайт расспостраняетсо только на браузер пользователя?

Ayavryk
На сайте с 11.10.2003
Offline
209
#1
STETSYSHYN:
Здравствуйте.

Встал вопрос организации ЧПУ.
Есть страницы такого типа:
index.php?major=index - главная страница
index.php?major=error&minor=404 - страница ошибки, в данном случае, 404.
index.php?major=blog&minor=article&id=9 - страница 9 статьи блога.

Если я напишу реврайт с index.php?major=([a-z]+) $1
Что получит в итоге скрипт? Он получит $_GET['major'], ведь URI то будет уже другим, в итоге и major не будет. Или этот реврайт расспостраняетсо только на браузер пользователя?

GET у вас каким был таким и останется. Reqwrite его не переписывает . Он переписывает запрос юзера типа

http://some.ru/index/blog/article/9

в запрос типа

http://some.ruindex.php?major=blog&minor=article&id=9

т.е юзер видит что у вас разбросано все по неким директориям, а вы на сервере переводите этот запрос на тот обработчик который реально будет все обрабатывать.

О том как устроено внутри сервера юзер даже не догадывается.

Тынгыр, мынгыр, комсомол (http://erum.ru). Ехари, ехари, (жалобно) аяврик. /народная тунгусская песня/
siv1987
На сайте с 02.04.2009
Offline
427
#2

"Реврайт распространяется на браузер пользователя". Он подменит серверу запрос пользователя (Pattern) на вашу ссылку (Substitution)

RewriteRule Pattern Substitution

O
На сайте с 29.05.2008
Offline
195
#3

ТС видимо попутал реврайт с редиректом.

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