【问题标题】:browser caching static files in flask?浏览器在烧瓶中缓存静态文件?
【发布时间】:2014-07-10 07:30:54
【问题描述】:

一直在阅读 python 中的烧瓶文档并建立本地网站。

刚刚用这个工具here在我部署在openshift上的网站进行了速度测试:-

分析报告说我的网站没有缓存静态资源。 在为我所有的价值谷歌搜索后,我收集到:-

  • 它与标题有关。
  • 缓存副本保存在客户端计算机以及客户端和网站之间的服务器中。

我的问题

  • 我是否要在 html 部分包含过期和标签?还是在 HTTP 标头部分?

  • 如果在 HTTP 标头部分我该怎么做?

如果我遗漏了文档中的某些内容,请告诉我。

【问题讨论】:

    标签: python caching flask openshift


    【解决方案1】:

    使用“SEND_FILE_MAX_AGE_DEFAULT”或查看网络资产 http://webassets.readthedocs.org/en/latest/

    在这里提出了类似的问题。 Flask static file Cache-Control

    【讨论】:

    • 我看过上面提到的问题。那里的问题是缓存设置为一个非常大的默认值。我的问题是测试表明我的网站没有缓存静态元素。这满足了我完成任务的基本要求。我还想知道标签是否添加到 HTTP 或 HTML 文档标头中。因此,关于巩固未来资源的新问题。
    • HTTP 标头。响应标头。
    • 好吧。但是为什么内容没有缓存很长时间呢?我在tools.pingdom.com/fpt 进一步检查了
    【解决方案2】:

    我遇到了这个问题,在网上找不到适合我的答案。

    然后我意识到我的静态文件根本不是从 Flask 提供的! Flask 只生成我的 HTML。静态文件由我的网络服务器直接提供(在我的例子中是 Apache,你的可能是 Nginx 或其他)。

    Apache 使用说明:

    先安装相关模块

    sudo a2enmod expires
    sudo a2enmod headers
    

    然后将这样的内容添加到您的.htaccess 文件中:

    # Expire headers    
    <ifModule mod_expires.c>
      ExpiresActive On
      ExpiresByType image/jpeg "access plus 1 month"
      ExpiresByType image/png "access plus 1 month"
      ExpiresByType image/gif "access plus 1 month"
      ExpiresByType text/css "access plus 1 month"
      ExpiresByType text/javascript "access plus 1 month"
      ExpiresByType application/javascript "access plus 1 month"
    </ifModule>
    
    # Cache-Control Headers
    <ifModule mod_headers.c>
    
      <filesMatch "\.(ico|jpe?g|png|gif)$">
        Header set Cache-Control "max-age=2592000, public"
      </filesMatch>
    
      <filesMatch "\.(css|js)$">
        Header set Cache-Control "max-age=2592000, public"
      </filesMatch>
    
    </ifModule>
    # END Cache-Control Headers
    

    Apache 配置修改自 更多详细配置请关注Apache manual

    【讨论】:

      猜你喜欢
      • 2020-08-03
      • 1970-01-01
      • 2012-11-25
      • 2019-09-21
      • 2021-03-24
      • 2018-05-28
      • 1970-01-01
      • 2015-02-14
      • 2019-01-02
      相关资源
      最近更新 更多