Вам нужен mod_expires в Apache для кэширования браузера с .htaccess?

Я уже более 3 часов ищу работающий функционал кеширования браузера. Я пробовал более 20 сценариев HTaccess, половина из них приводила к ошибке 500. Тем не менее, через PageSpeed ​​и GTMetrix они все еще кричат, что я должен использовать кеширование браузера, что означает, что правила HTaccess игнорируются или не работают.

Говоря, что я пробовал более 20 сценариев, я думаю, что могу сказать, что по крайней мере один из них работает, но поскольку Google и GTMetrix говорят, что кэширование браузера не выполнялось, сценарий в .htaccess игнорируется.

Так что мне очень интересно, что это может быть. Это может быть проблема, связанная с сервером? Я использую Ubuntu 12.04

Возможно, какой-то конкретный мод php не загружен. Так как в коде ты всегда пишешь <ifModule mod_expires.c> я подумал, может мне нужен был mod_expires. Итак, я создал файл php со следующим кодом

<?php
    print_r(apache_get_modules());
?>

Чтобы узнать, включен ли mod_expires... но это не так. Ровно 24 мода были включены, но не истекли.

Кому интересно, это моды, которые включены, печатаются через приведенный выше скрипт.

Array ( [0] => core [1] =>
mod_log_config [2] =>
mod_logio [3] =>
prefork [4] =>
http_core [5] => 
mod_so [6] => 
mod_alias [7] => 
mod_auth_basic [8] => 
mod_authn_file [9] => 
mod_authz_default [10] => 
mod_authz_groupfile [11] => 
mod_authz_host [12] => 
mod_authz_user [13] => 
mod_autoindex [14] => 
mod_cgi [15] => 
mod_deflate [16] => 
mod_dir [17] => 
mod_env [18] => 
mod_mime [19] => 
mod_negotiation [20] => 
mod_php5 [21] => 
mod_reqtimeout [22] => 
mod_rewrite [23] => 
mod_setenvif [24] => mod_status )

Кто может сказать мне, является ли mod_expires обязательным для кеширования браузера через .htaccess и как заставить его работать?

Спасибо!


person Sander Schaeffer    schedule 29.04.2014    source источник


Ответы (1)


Чтобы ответить на мой собственный вопрос:

Если вы столкнулись с проблемой, что все скрипты htaccess не работают, попробуйте приведенный выше код PHP (3 строки) и узнайте, активен ли mod_expires на вашем сервере.

Если нет: проверьте это руководство как его включить! :)

person Sander Schaeffer    schedule 29.04.2014