RewriteRule

player

Новичок
RewriteRule

Добрый день!

Не знаю как написать правило, чтобы если указывается скажем site.ru/kontakt
то пользователь переправляется на site.ru/module.php?mod=content&page=kontakt

НО если пользователь хочет открыть файл рнр, например admin.php, то это правило не должно действовать

Я прочитал достаточно мануалов, но еще не въехал, а правило нужно

Заранее спасибо
 

player

Новичок
странно:

RewriteRule ^(bau/)([A-Za-z0-9]*) module.php?mod=content&page=$2 [L]

так все работает, только мне мешает bau/

я хотел сделать так:
RewriteRule ^([A-Za-z0-9]*) module.php?mod=content&page=$1 [L]

но когда я пишу domain.test/kontakt
то он преобразовывает ее в
mod=content&page=module

этого я не могу понять

короче.. не обязательно понимать почему это происходит, но плиз подскажите как избавится от дополнительного уровня (bau/)
 

MiksIr

miksir@home:~$
RewriteCond %{REQUEST_URI} !^module.php
RewriteRule ^([A-Za-z0-9]*) module.php?mod=content&page=$1
 

cDLEON

Онанист РНРСlub
Учи регулярку.
Понимать, как раз таки, обязательно, а не методом тыка эксперементировать...
И не модуле буде в конце, а bau/
 

player

Новичок
И не модуле буде в конце, а bau/
В том то и дело, что я при вызове страницы в URL не применяю ни module ни bau/

но $_SERVER['QUERY_STRING'] возвращает mod=content&page=module
и этого я не могу понять

Учи регулярку.
Вот я и учу, только это не так просто в начале. хорошо бы найти мануалы с примерами, чтобы на них учиться

MiksIr
Спасибо! Но
RewriteCond %{REQUEST_URI} !^module.php
RewriteRule ^([A-Za-z0-9]*) module.php?mod=content&page=$1
возвращает тот же mod=content&page=module

-~{}~ 20.07.07 12:21:

Еще:

теперь я написал только
RewriteRule ^([A-Za-z0-9]*)$ module.php?mod=content&page=$1

со знаком $, и теперь все работает
 

dimagolov

Новичок
^ в начале это позиция начала строки, $ в конце - это позиция конца строки
 

player

Новичок
да, это логично.. но если я пишу

site.ru/kontakt

то kontakt одновременно и начало, и конец строки, поэтому мне не совсем ясно, почему ожидался знак конца
 

Anarki

Новичок
Код:
RewriteEngine On
RewriteBase /
RewriteCond	%{REQUEST_FILENAME} !\.php$ 
RewriteRule	^(.+)$  /module.php?mod=content&page=$1
 
Сверху