В некоторых случаях требуется запретить определенные методы HTTP-запросов, например ограничение методов API веб-приложений или защита от ботов.
Протокол HTTP имеет следующие методы запросов:
GET |
Запрашивает ресурс |
HEAD |
Так же, как и метод GET, но без тела ответа |
POST |
Используется для отправки данных ресурсу для добавления сущностей |
PUT |
Так же, как POST, но заменяет сущности |
DELETE |
Удаляет указанный ресурс |
CONNECT |
Устанавливает «туннель» к серверу |
OPTIONS |
Используется для описания параметров соединения с ресурсом |
TRACE |
Выполняет вызов возвращаемого тестового сообщения с ресурса |
PATCH |
Используется для частичного изменения ресурса |
<Limit GET>
Order Allow,Deny
Allow from All
</Limit>
<Limit POST>
Order Allow,Deny
Allow from All
</Limit>
<Limit PUT>
order deny,allow
deny from all
</Limit>
<Limit DELETE>
order deny,allow
deny from all
</Limit>
Запрет методов кроме POST
<Limit GET PUT DELETE>
order deny,allow
deny from all
</Limit>
Также блокировку запросов можно реализовать с помощью модуля mod_rewrite, указав условия в RewriteCond.
Запрет POST-методов
RewriteCond %{REQUEST_METHOD} POST
mod_rewrite ^ / [L,F]
Запрет методов кроме POST
RewriteCond %{REQUEST_METHOD} !POST
mod_rewrite ^ / [L,F]





