【问题标题】:CakePHP cache control for asset files (images, CSS, etc)资产文件(图像、CSS 等)的 CakePHP 缓存控制
【发布时间】:2014-01-24 04:08:48
【问题描述】:

使用 CakePHP 控制图像和 CSS 文件的 Expires 标头的最佳方法是什么?

很遗憾,我的主机不支持mod_expiresmod_headers,所以我不能简单地在.htaccess 文件中设置这些值。现在我的文件没有缓存控制,并且发出了很多不必要的请求。

通过 Cake 管道请求资产文件并通过 header() 设置适当的标头的最优雅的方法是什么?

【问题讨论】:

    标签: cakephp caching


    【解决方案1】:

    我想最好的,甚至不一定是特定于 Cake 的方法,是在 /webroot 中创建一个脚本来添加标题,然后使用 .htaccess 指令通过该文件对 ./css/*./img/* 的请求进行管道传输.我只是希望Cake 中可能已经内置了一些这样的功能。 :)

    【讨论】:

      【解决方案2】:

      我建议编写一个帮助程序,它获取文件名,然后返回一个 URL 到一个 PHP 脚本,该脚本获取文件并添加必要的标题。您可以在此处查看基本帮助程序的示例:http://bakery.cakephp.org/articles/view/image-resize-helper

      【讨论】:

      • Helper 的额外步骤似乎没有必要,感谢您的回复。 :)
      • 帮助器的原因是您在输出资产时不必手动重写所有 URL。如果您不介意这样做,那么您当然可以只编写一个 PHP 脚本来编写标头,然后在使用 CakePHP 引用资产时包含该脚本。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多