Как заблокировать нежелательные хосты в .htaccess? - PullRequest
1 голос
/ 31 мая 2019

Каждая из следующих строк в моем .htaccess не блокирует хост hst-123-unwanted.tld

Require not host unwantedhost.tld
Require not host .unwantedhost.tld
Require not forward-dns unwantedhost.tld
Require not forward-dns .unwantedhost.tld

Что не так?

Спасибо заранее за ваши подсказки.

Дополнительная информация к комментарию Боба:

<RequireAll>
        Require any granted
        Require not host amazonaws
        Require not host bezeqint
        Require not host colocrossing
        Require not host metajob
        Require not host drive.dn.ua
        Require not host forthnet
        Require not host hinet
        Require not host kievline
        Require not host kyivstar
</RequireAll>

вызовет это сообщение об ошибке:

Внутренняя ошибка сервера Сервер обнаружил внутреннюю ошибку или неверную конфигурацию и не смог выполнить ваш запрос. Свяжитесь с администратором сервера по адресу webmaster@my_domain.tld, чтобы сообщить им о времени возникновения этой ошибки и действиях, которые вы выполнили непосредственно перед этой ошибкой. Дополнительная информация об этой ошибке может быть доступна в журнале ошибок сервера. Сервер Apache на my_domain.tld порт 443

Если я изменю «Требовать все предоставленные» на «Требовать все предоставленные», то сообщение об ошибке отключается, но .htaccess не блокирует нежелательных ботов.

1 Ответ

1 голос
/ 31 мая 2019

"require not" не может использоваться само по себе, оно ограничивает только хосты, включенные в предыдущий оператор require.

Require any granted
Require not host notwanted.tld

Должен работать.

...