我已经用了 3 个多小时来寻找有效的浏览器缓存功能。我已经尝试了 20 多个 HTaccess 脚本,其中一半导致 500 错误。然而,通过 PageSpeed 和 GTMetrix,他们仍然喊我应该使用浏览器缓存,这意味着 HTaccess 规则被忽略或不起作用。
通过说我已经尝试了 20 多个脚本,我想我可以说其中至少有一个在工作,但是由于 Google 和 GTMetrix 说没有浏览器缓存,所以 .htaccess 中的脚本被忽略了。
所以我真的很想知道它可能是什么。可能是服务器相关的问题?我正在运行Ubuntu 12.04
也许没有加载特定的 php mod。因为在你总是写的代码中<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 进行浏览器缓存的必备条件以及如何使其工作?
谢谢!