我想阻止我的WordPress网站上 .htaccess
文件中以 2a01:598:xxx
开头的所有IP地址。
但是 每次编辑 .htaccess
文件时,都无法访问我的网站。 我收到内部服务器错误。
,在#END WordPress
之后,我的 .htaccess
文件的末尾我添加了代码:
Require all granted
Require not ip 2a01:598:
我还尝试了此变体:
Require all granted
Require not ip 2a01:598:::
]但是没有任何效果。 即使当我尝试像这样阻止自己的IPv4地址时:
Require all granted
Require not ip 11.222.33.444 (with my IP instead)
我收到500内部服务器错误?
我不知道该怎么办。 我只想阻止我的 .htaccess
文件中以此 2a01:598:
开头的所有IP地址。
Если Вы получаете 500 Внутренних Ошибок Сервера, необходимо проверить журнал ошибок сервера на детали ошибки. 500 состояний являются просто всеобъемлющим ответом, возвращенным клиенту из-за некоторой определенной ошибки сервера.
существует число проблемы здесь тот результат по ошибкам...
Require not ip 2a01:598: : Require not ip 2a01:598:::
и В этих случаях, указанные адреса IPv6 2a01:598:
и в 2a01:598:::
не допустимы - следовательно 500 ошибочных ответов. Вы могли использовать 2a01:598::
(2 двоеточия), но это коротко для конкретный адрес IPv6 2a01:598:0:0:0:0:0:0
, который не является тем, чего Вы требуете.
С адресами IPv4, Apache позволяет Вам использовать частичные IP-адреса (целые октеты), например, 203.0.113
(никакая запаздывающая точка). Для адресов IPv6 Вы могли бы ожидать 2a01:598
быть разрешенными, однако, это, кажется, не поддерживается, поскольку это снова заканчивается, 500 ответов и "Указанный IP-адрес являются недопустимой" ошибкой, будучи зарегистрированным.
Для определения диапазона адресов IPv6 необходимо использовать нотацию CIDR. Например, для определения диапазона дюйм/с, которые "запускаются 2a01:598:
" необходимо было бы использовать 2a01:598::/32
использование нотация CIDR ( пример ).
Require all granted Require not ip 11.222.33.444
, Когда Вы указываете приблизительно [1 111] директивы таким образом, Apache значения по умолчанию к <RequireAny>
контейнер. Отрицаемый директивы (т.е. Require not
) не разрешены в <RequireAny>
контейнер; следовательно 500 ошибок. ("отрицательный Требуют, чтобы директива не имела никакого эффекта в [1 115] директива", зарегистрированная как ошибка.) Необходимо явно использовать <RequireAll>
контейнер здесь.
Ссылка:
Так, необходимо было бы сделать что-то как следующее вместо этого:<RequireAll>
Require all granted
Require not ip 2a01:598::/32
</RequireAll>
И конец моего
.htaccess
файл после# END WordPress
Логически, это должно пойти около вершины Вашего .htaccess
файл, прежде # BEGIN WordPress
маркер комментария. Блокирование директив должно быть первым. Однако это, вероятно, не имеет значения (из-за способа, которым Apache обрабатывает различные модули).