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

.htaccess php_value и php_flag игнорируются в подкаталоге

У меня есть файл .htaccess в моем каталоге public_html со следующими правилами:

<IfModule litespeed>
php_flag zlib.output_compression On
php_value zlib.output_compression_level 2
php_value session.gc_maxlifetime 200000
php_flag display_startup_errors On
php_flag html_errors On
php_flag ignore_repeated_errors Off
php_flag ignore_repeated_source Off
php_flag report_memleaks On
php_flag track_errors On
php_value log_errors_max_len 0
php_flag display_errors Off
php_flag log_errors On
php_value error_log errors.log
php_value max_execution_time 600
php_value max_input_time 600
php_value max_input_vars 100000
</IfModule>

Они работают нормально, подтверждено через phpinfo();

Однако, когда я помещаю файл .htaccess в подкаталог с правилами, которые предполагают переопределение вышеуказанного, они полностью игнорируются, и работают только указанные выше правила.

Например, я разместил файл .htaccess в моем каталоге public_html / admin со следующими правилами

<IfModule litespeed>
php_value session.gc_maxlifetime 7200
php_flag display_errors On
</IfModule>

При проверке phpinfo(); он показывает, что значения по-прежнему «200000» и «Выкл.» вместо «7200» и «Вкл.» соответственно.

Почему это происходит и как это исправить?

Обязательно разрешите переопределение там, где хотите.

<Directory "/var/www/htdocs">
    AllowOverride All
</Directory>

AllowOverride None отключит .htaccess.

Оказалось, что на сервере litespeed была обнаружена ошибка. Я сообщил об этом в LS, и они исправили это:

https://www.litespeedtech.com/support/forum/threads/solved-htaccess-php_value-and-php_flag-being-ignored-in-sub-directory.13933/