Это должно было быть комментарием к аналогичному вопросу, но, поскольку Stack очень ограничивает комментарии, я публикую его так, как они этого хотят:
: Вот документация: http://httpd.apache.org/docs/2.4/en/mod/mod_authz_core.html#require)
Вот конфигурационный файл: Options Indexes FollowSymLinks AllowOverride None Require ip $CIDR ~
Ошибка по-прежнему: 24 мая 20:54:54 ip-172-16-5-34.us-west-1.compute.internal httpd [23044]: AH00526: Синтаксическая ошибка в строке 3 файла / etc / httpd / conf .d / httpd.conf: 24 мая 20:54:54 ip-172-16-5-34.us-west-1.compute.internal httpd [23044]: недопустимая команда 'Require', возможно, неправильно написана или определена модуль не входит в конфигурацию сервера
Что мне не хватает?
Похоже, что команды RequireAny или RequireAll могут помочь, но не помогают.
Для справки предоставленной здесь информации недостаточно: Как мне потребовать диапазон IP вместо 1 IP?
Require ip $CIDR ~
не подходит в Options
директива. В документации очень четко указано, что может быть в Options
директива.
Require
это его собственная директива, который может находиться в контейнере, но не в Options
директива.
Когда вы справитесь с этим, вашей следующей проблемой, вероятно, будет Require ip $CIDR ~
. Где ты это берешь $CIDR ~
немного? Вам необходимо соблюдать соответствующие спецификации для контроль доступа со стороны хоста и уточнение Require ip
директивы.
Если на самом деле у вас действительно есть Require ip $CIDR ~
в отдельной строке конфигурации, в отличие от того, что вы задали в вопросе, затем обратитесь к последней части этого ответа сейчас (т.е. используйте правильную спецификацию host / ip с Require ip
), а также см. следующие примечания.
ПРИМЕЧАНИЕ: Вы должны иметь mod_authz_core
загружен, чтобы использовать Require
(и связанные) директивы.
ПРИМЕЧАНИЕ ТАКЖЕ: вы должны запустить apachectl -t
чтобы проверить изменения конфигурации ПЕРЕД попыткой перезапуска Apache, а не обнаруживать эти проблемы путем сбоя Apache.