Как контейнер авторизации 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
" ? Можете, пожалуйста, привести несколько вариантов использования с пояснениями?