30

我有一个基于 Jekyll 引导的博客,托管在 Github 页面上。

我的问题是:每次我在网页上更改某些内容时,我都必须强制重新加载页面(CTRL + R)才能看到更改。

Jekyll 或我的浏览器似乎没有意识到有更新的版本可供发送。

如何配置 Jekyll 以更好地处理这个问题?

4

3 回答 3

6

有几个 jekyl 插件可以处理资产缓存破坏。

https://github.com/ixti/jekyll-assets/

http://matthodan.com/2012/11/22/jekyll-asset-pipeline.html

我尝试了 jekyll-assets ,它非常好,因为它可以管理所有类型的具有 md5 版本号的资产。

在我使用在编译时将字符串附加到我的 css 链接之前。

<link href="{{ ASSET_PATH }}/css/global.css?{{ site.time | date:'%Y%m%d%U%H%N%S' }}" rel="stylesheet">
于 2013-01-06T13:48:40.563 回答
3

您可以将这些元标记添加到您的 html 以禁用页面的浏览器缓存。

<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />
于 2013-01-09T12:02:21.727 回答
-1

如果您想绕过静态资源上的缓存,您可以在每次推送文件时更改文件名。这将使浏览器获取新资源,因为它不会知道任何关于具有新名称的文件的信息。

例如:

旧文件名:project.css 新文件名:projectv01.css

或者任何你想要的。

于 2012-11-27T20:58:40.957 回答