【问题标题】:Do you need mod_expires in Apache for Browser caching with .htaccess?您是否需要 Apache 中的 mod_expires 用于使用 .htaccess 进行浏览器缓存?
【发布时间】:2014-04-29 10:36:01
【问题描述】:

我已经花费了 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 进行浏览器缓存的必备条件以及如何使其工作?

谢谢!

【问题讨论】:

    标签: php apache .htaccess mod-rewrite mod-expires


    【解决方案1】:

    回答我自己的问题:

    如果您发现所有 htaccess 脚本都无法正常工作,请尝试上面的 PHP 代码(3 行)并查看 mod_expires 在您的服务器上是否处于活动状态。

    如果没有:请检查this tutorial 如何启用它! :)

    【讨论】:

      猜你喜欢
      • 2017-01-20
      • 2018-05-05
      • 1970-01-01
      • 2011-10-16
      • 2020-07-21
      • 2020-01-26
      • 1970-01-01
      • 2012-03-09
      • 2013-01-21
      相关资源
      最近更新 更多