htaccess+deny

Настройка и администрирование веб-серверов.
Ответить
andrey137
Сообщения: 8
Зарегистрирован: 16 авг 2004, 23:50
Откуда: Moscow
Контактная информация:

30 окт 2005, 09:35

Господа помогите, измучился весь!!!
Пытаюсь наскорую руку разобраться как в файле .htaccess выставить запрет доступа к определенному URI, причем требуется запретить доступ к страничке отличающейся от других параметром передаваемым методом GET, т.е. стоящем после "?"
например
запретить на сайте доступ к статьте с идентификатором Itemid=39, т.е с вот таким URL:
http://kapa.tatyxa.ru/index.php?option= ... &Itemid=39

Вроде как все что идет после протокола и имени хоста называется URI, пытался воспользоваться этим слепив нечто вроде

SetEnvIf Request_URI "Itemid=39$" not_let_me_in
Order Deny,Allow
Deny from env=not_let_me_in

Однако не работает!!!

Если производить запрет доступа по кускам пути и имени файла, т.е. части URL между хостом и "?" - все работает, все что идет после "?" в Request_URI почему-то не попадает!!!

Что делать??? Спасайте!!!
Аватара пользователя
AiK
Сообщения: 2274
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

30 окт 2005, 13:07

Всё очень просто. То, что до знака вопроса - это request uri. Всё, что после - query string.
Даже самый дурацкий замысел можно воплотить мастерски
andrey137
Сообщения: 8
Зарегистрирован: 16 авг 2004, 23:50
Откуда: Moscow
Контактная информация:

30 окт 2005, 14:20

Фигушки

SetEnvIf %{QUERY_STRING} "option=com_content&task=blogcategory&id=24&Itemid=39" not_let_me_in
Order Deny,Allow
Deny from env=not_let_me_in

не работает
Аватара пользователя
AiK
Сообщения: 2274
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

30 окт 2005, 15:38

Альтернатива

Код: Выделить всё

RewriteEngine on
RewriteCond %{QUERY_STRING}   foo=bar
RewriteRule ^(.+)$          - [F]
Даже самый дурацкий замысел можно воплотить мастерски
Ответить