Назад | Перейти на главную страницу

500 Внутренняя ошибка сервера при добавлении строки в файл .htaccess

Мне нужно добавить следующую строку в мой файл .htaccess, чтобы мой веб-сайт работал с mod_security

SecFilterScanPOST Off

но потом я получаю ошибку

Внутренняя ошибка сервера

Сервер обнаружил внутреннюю ошибку или неправильную конфигурацию и не смог выполнить ваш запрос.

В моем диспетчере WebHost я вижу следующее сообщение: mod_security установлен и работает!

Не знаю, что сделал не так?

Вероятно, этот модуль не загружен. Попробуйте в течение <IfModule> блокировать чтобы избежать такой ошибки:

<IfModule mod_security.c>
    SecFilterScanPOST Off
</IfModule>

Но учтите, что это не решает вашу проблему. Это просто позволяет избежать этой внутренней ошибки.

Чтобы решить вашу проблему, убедитесь, что модуль mod_security загружен. Это делается с помощью LoadModule директива.

Вы сказали в своих комментариях, что в вашем файле журнала вы можете прочитать «недопустимая команда 'secfilterscanpost', возможно, неправильно написана или определена»

Если вы используете mod_security2, SecFilterScanPOST устарел, и вам следует перенести его в SecRequestBodyAccessas, это объясняется в документе о миграции.

http://www.modsecurity.org/documentation/ModSecurity-Migration-Matrix.pdf

Проверьте журнал ошибок apache (в Linux он обычно находится в / var / log / http / error_log или аналогичном).

Вы можете проверить, есть ли SecFilterScanPOST директива разрешена в .htaccess файлы (возможно, через AllowOverride в файле конфигурации Apache или VirtualHost).

Если ваша версия mod_security 2 или выше, вы не можете помещать директивы в файл .htaccess - только httpd.conf будет делать. Думаю, рано или поздно они добавят это в FAQ.