事情就是这样。我正在提供一些压缩的 CSS 内容
(`str_replace(array("\r", "\n", "\t", '\s\s+'), '', cssGoesHere)`)
通过我页面中的 PHP 文件:
<link rel="stylesheet" type="text/css" href="/css/loader.css.php" />
问题是:如何让浏览器缓存返回的 css,但如果内容发生更改则更新缓存?
PHP文件没有被修改,所以附加类似的东西
<?php echo filemtime('/css/loader.css.php'); ?>
href
属性不是一个选项。这可以通过标题解决吗?如果可以,如何解决?因为 AFAIK 如果我像上面写的那样提供它,浏览器只会缓存结果并继续重用缓存(当然,前提是浏览器已启用/能够这样做),但我需要它知道内容何时改变了。
编辑:我用我的代码制作了一个 github 项目(尽管自从我写了这篇文章以来,我确实对它进行了很多更改以获得更大的灵活性)。这是链接:https
://github.com/jurchiks/YACC
如果您有任何建议,请将它们写到我的电子邮件或smth。