Как контейнер авторизации Apache 2.4 RequireAll оценивает условия?

Документация _ RequireAllдиректива гласит:

<RequireAll>и</RequireAll>используются для включения группы директив авторизации, из которых ни одна не должна завершиться неудачно , и хотя бы одна должна быть успешной , чтобы директива завершилась успешно.

Это говорит о том, что директивы авторизации имеют статус «не удалось», что также не является «успехом» (или я что-то упускаю, и это моя точка зрения ;-)

Этот отчет об ошибке (пункт 1) относится к статусу авторизации с тремя состояниями (успех/неудача/нейтраль), но я не смог найти больше ничего об этом, даже в официальной документации.

Последний пункт (возможно, не связанный напрямую с этим вопросом с тремя состояниями, но участвующий в моем недоразумении): на странице документации «Контроль доступа по хосту» указано

Вы можете вставить, чтобы отменить определенное требование. Обратите внимание, что посколькуnotявляется отрицанием значения, его нельзя использовать само по себе для разрешения или отклонения запроса, поскольку это не составляет .

Таким образом, чтобы запретить посещение с помощью отрицания, блок должен иметь один элемент, который оценивается как или . Например, если кто-то (с IP-адресом 10.252.46.165) рассылает спам на вашу доску объявлений, и вы хотите не допустить этого, вы можете сделать следующее:

      <RequireAll>
    Require all granted
    Require not ip 10.252.46.165
</RequireAll>

Мне,Require ip 10.252.46.165было бы :

  • для владельца этого IP:
  • для кого-то еще:

иRequire not ip 10.252.46.165:

  • для владельца этого IP:
  • для кого-то еще:true

Какой смысл это подчеркивать»not trueнеfalse" ? Можете, пожалуйста, привести несколько вариантов использования с пояснениями?

0 ответов

Другие вопросы по тегам