Назад | Перейти на главную страницу

Возможно ли заблокировать все запросы, заканчивающиеся определенным URL-адресом в apache

Можно ли заблокировать запросы, заканчивающиеся определенным URL-адресом в apache, например, мне нужно заблокировать все запросы, заканчивающиеся на? Wsdl.

Ваш пример легко решить, вы можете использовать mod_rewrite для достижения этой цели:

RewriteCond     %{QUERY_STRING} "^wsdl.*$"
RewriteRule     "" "-" [F]

Это заблокирует любой запрос с wsdl в начале имени первого параметра запроса.

Чтобы заблокировать только wsdl параметр в любом месте строки запроса, регулярное выражение немного сложнее:

RewriteCond     %{QUERY_STRING} ".*(?:^|&)wsdl(?:=|&|$)"
RewriteRule     "" "-" [F]

Эта конфигурация работает на

  • ? wsdl
  • ? wsdl = что-то
  • ? s1 = s2 & wsdl
  • ? s1 = s2 & wsdl = что-то
  • ? s1 = s2 & wsdl & s3 = s4

Источники, которые я использовал: