带有 CDN 版本的 css 图像路径
Posted
技术标签:
【中文标题】带有 CDN 版本的 css 图像路径【英文标题】:css image path with version for CDN 【发布时间】:2014-03-24 01:29:45 【问题描述】:我正在使用以下范例来处理我的 CDN 缓存: 每个路径都包含“?version”,例如:http://mycdn.com/some-javascript-file.js?123
我的所有资源(js、css、图像)都使用相同的范例,我遇到的问题是 css 文件中的图像路径。
例如,我的一个 css 中有以下 sn-p:
“网址(../../Images/example.png)”
问题是这个图像路径不使用版本范例,我想以某种方式将版本添加到路径中,有没有很好的方法可以做到这一点,除了以下方法: 1) 对于每个图像更改 - 还使用一些虚拟版本更改 css。
"url (../../Images/example.png?1)" - 更改 1
"url (../../Images/example.png?55)" - 更改 2
2) 将我所有的 css 文件转换为 aspx 文件并使用代码隐藏来定义版本:
""
3) 使用无点库:http://www.dotlesscss.org/
还有其他简单/好主意吗?
【问题讨论】:
【参考方案1】:我发现的最佳解决方案是将版本标记更改为 url 的开头并使用 url rewrite 来处理请求。 因此,例如,如果我曾经有:
http://website/Content/Images/1.png?123456
这将变成:
http://website/123456/Content/Images/1.png
请注意,我使用 url 重写来处理请求,以便 http://website/123456/Content/Images/1.png
实际上会从 http://website/Content/Images/1.png
带来数据
【讨论】:
以上是关于带有 CDN 版本的 css 图像路径的主要内容,如果未能解决你的问题,请参考以下文章
Google 的 CDN 上是不是有 jQuery UI CSS 主题的缩小/压缩版本?