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

Назначение конфигурации Apache RewriteEngine

Я наткнулся на этот фрагмент в файле конфигурации Apache, который написал кто-то другой, но я не уверен в цели. Может ли кто-нибудь объяснить, для чего это?

RewriteEngine On
RewriteCond %{THE_REQUEST} !HTTP/1\.1$
RewriteRule .* - [F]

Эти директивы отклоняют (403 Forbidden) любой запрос, отличный от HTTP / 1.1. Многие боты сканируют с заголовком запроса HTTP / 1.0, поэтому они будут заблокированы. Все современные браузеры будут использовать HTTP / 1.1 (по крайней мере). Однако, поскольку HTTP / 2.0 уже здесь, эти директивы, возможно, устарели и не должны использоваться.

В THE_REQUEST Переменная сервера содержит начальный заголовок запроса формы:

GET /foo HTTP/1.1

Если вы хотите заблокировать только HTTP / 1.0, вместо этого вы можете использовать что-то вроде следующего:

RewriteEngine On
RewriteCond %{THE_REQUEST} HTTP/1\.0$
RewriteRule ^ - [F]