|
|
|
| как исключить того чтобы tckb вместо site.ru/articles/1 пользователь набрал site.ru/articles.php?mod=article&id=1 выдать ошибку 404 ? | |
|
|
|
|
|
|
|
для: admiral
(11.10.2009 в 21:09)
| | Нужно выудить правилом адрес site.ru/articles.php?mod=article&id=1 и назначить ему директивы L и R (вместо R можно использовать G или F). | |
|
|
|
|
|
|
|
для: cheops
(11.10.2009 в 21:55)
| | Можно на примере?
Есть правило
RewriteRule ^(article)/([0-9]*)(/?)$ articles.php?mod=$1&id=$2 [QSA,L] | |
|
|
|
|
|
|
|
для: admiral
(11.10.2009 в 22:03)
| | | |
|
|
|
|
|
|
|
для: serjinio
(12.10.2009 в 12:42)
| | не понял? | |
|
|
|
|
|
|
|
для: admiral
(12.10.2009 в 16:40)
| | mod=$1&id=$2 переменных 2 а в скобках 3 | |
|
|
|
|
|
|
|
для: admiral
(12.10.2009 в 16:40)
| | имхо не получится просто так закрыть доступ чтобы не закрыть его при реврайте,
с каждым совпавшим правилом выполняется переброс на этот запрос(видимый или не видимый для браузера), и правила проверяются снова , даже хоть и было [L]
, есть способы отделять внутренние подзапросы сервера от запросов , но реврайт-перенаправления не попадают под внутренние подзапросы.
Возможно я чего-то не знаю, но по моему можно перебрасывать только с ещё одним дополнительным параметром , который и будет индикатором того что переход по мод-реврайт ,
(что сделает опять-же доступной прямую ссылку с этим параметром)
или можно попробовать с ENV-переменными , но точно не скажу, помню что пробовал но не помню что получилось | |
|
|
|
|
|
|
|
для: heed
(13.10.2009 в 21:12)
| | а что если на уровне php проверять $_SERVER['REQUEST_URI'] и проверять регуляркоами совпадает ли такому типу /article/1/ , тоесть если будет mod=article&id=... то уже не правильно и соответсвенно генерировать 404 | |
|
|
|
|
|
|
|
для: admiral
(14.10.2009 в 21:49)
| | На уровне php точно можно определить по какой ссылке попали на скрипт
,попробовал снова на уровне htaccess с несколькими ENV-переменными , ничего не получилось , по крайней мере на виндовс с apache2.2. на других осях переменные отличаются.
но всёравно ещё пока нет уверенности ,) что нельзя такое сделать в htaccess без посредства изменения строки запроса | |
|
|
|