Дополнительно
Как отключить mod_security в файле .htaccess?
Как отключить mod_security
с помощью файла .htaccess
на сервере Apache?
Я использую WordPress на своем личном домене и размещаю пост, содержание которого содержит некоторый блок кода, и, как сказал мой хостинг-провайдер, mod_security
выдает ошибку, а мой IP попал в брандмауэр из-за mod_security
.
Поэтому я хочу отключить mod_security
с помощью файла .htaccess
.
34
7
Это можно сделать, но, скорее всего, ваш хостер внедрил
mod_security
не просто так. Убедитесь, что они одобрили отключение этой функции для вашего собственного сайта.Тем не менее, это должно сработать;
На некоторых сервера и веб-узлов, он'можно отключить ModSecurity через `.htaccess файл, но только в полном объеме – вы можете'т отключать отдельные правила.
А не отключить его для всего сайта, это'лучше ограничить это определенным URL-адресам. Вы можете уточнить заявление, какие URL-адреса, чтобы соответствовать через регулярное выражение в в
<если>
ниже...Просто чтобы обновить этот вопрос для mod_security 2.7.0+ - они отключили возможность смягчения modsec через htaccess, если вы не компилируете его с флагом
--enable-htaccess-config
. Большинство хостеров не используют эту опцию компилятора, поскольку она позволяет слишком слабую безопасность. Вместо этого, vhosts в httpd.conf является вашим основным вариантом для контроля modsec.Даже если вы скомпилируете modsec с htaccess mitigation, вам доступно меньше директив. Например, там больше нельзя использовать
SecRuleEngine
. Вот список, который можно использовать по умолчанию в htaccess, если это разрешено (имейте в виду, что хост может дополнительно ограничить этот список с помощьюAllowOverride
):Подробнее на официальной вики modsec
Дополнительное замечание для пользователей 2.x:
IfModule
теперь должен искатьmod_security2.c
вместо более старогоmod_security.c
.Если вышеуказанное решение не работает, попробуйте следующее:
В .файл htaccess в корне сайта редактирование каталога следующую строку:
в
в
Просто держать в <ifmodule mod_security.в C> правила mod_security как SecFilterEngine </ifmodule> и <IfModule mod_rewrite, с.в C> частей друг от друга. Его произведения для сервера Apache
С некоторыми веб-узлами, включая системы Namecheap, это's не можно отключить с помощью ModSecurity
.реврайт
. Единственный вариант, это обратиться в техподдержку и попросить их, чтобы изменить конфигурацию.Для тех, кто просто ищете, чтобы пропустить страницу об ошибке для отображения контента на виртуальном хостинге. Возможно, вы захотите попробовать и использовать редирект в .файл htaccess. Если говорить об ошибках 406, на UnoEuro это не'т, кажется, работает просто выключая безопасности. Так что я использовал это:
Потом вы всегда сможете изменить статус ошибки с помощью PHP. Но знайте, что в моем случае это означает, что я открываю дверь к SQL-инъекции, как я обход в WAF. Так что вы должны убедиться, что вы либо иметь собственные меры безопасности или обеспечения безопасности как можно скорее снова.