【问题标题】:Client side caching using Apache 2使用 Apache 2 的客户端缓存
【发布时间】:2011-09-14 13:51:45
【问题描述】:

我有一个脚本消耗太多资源来提供只能每分钟检索的数据。有没有办法通过 .htaccess 文件来配置 Apache 2,以指定标题告诉客户端将脚本结果在其缓存中保持原样一分钟?

我知道这可以通过脚本本身来完成,但我想通过网络服务器的配置来完成。

【问题讨论】:

    标签: apache caching cache-control browser-cache


    【解决方案1】:

    mod_expires 是一个很好的解决方案。

    如果您使用的是类 unix 系统:

    a2enmod expires
    apache2ctl restart
    

    然后您将能够为给定文件定义过期条件,或通过您的 .htaccess 文件根据 mimetype 定义缓存策略。

    <IfModule mod_expires.c>
        ExpiresActive On
    
        ExpiresByType image/gif A3600
    
        <Files scriptToCache.php>
            ExpiresDefault A60
        </Files>
    </IfModule>
    

    这里的“A3600”表示文件在访问后3600秒过期。

    更多信息在这里:http://httpd.apache.org/docs/2.0/mod/mod_expires.html

    【讨论】:

      【解决方案2】:

      简短的回答是否定的 - 您需要从脚本中返回缓存标头。

      【讨论】:

        【解决方案3】:
        <IfModule mod_expires.c>
                  <FilesMatch "\.(jpe?g|png|gif|js|css)$">
                              ExpiresActive On
                              ExpiresDefault "access plus 1 year"
                  </FilesMatch>
        </IfModule>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-10-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-11-02
          • 2017-01-19
          • 2017-03-18
          相关资源
          最近更新 更多