使用mvc捆绑包重建url

本文关键字:重建 url 包重建 mvc 使用 | 更新日期: 2023-09-27 17:58:17

在我正在构建的网站上,我们正在使用内置的捆绑和缩小功能。我们使用@Scripts.Render 渲染脚本

@Scripts.Render("~/bundles/scripts")

它生成一个类似的链接

bundles/scripts?v=3-DUUAAegZl4yp1O4V0VL0GnJ0U6gT3De8yKb41lfGs1

在这里我认为散列:

v=3-DUUAAegZl4yp1O4V0VL0GnJ0U6gT3De8yKb41lfGs1 

如果我们对插入的脚本进行更改,这将是明智的,但事实似乎并非如此。

现在,当我们试图实现用于外绑定的自定义cdn时,它在更新时失败,因为哈希似乎永远不会改变。

有人知道在脚本更改或我们正在做一些事情时更改哈希的解决方案吗?

编辑:我注意到,根据我使用的环境,行为会有所不同。本地开发它似乎可以工作,但在临时服务器上不起作用。应该有区别吗?

第2版:似乎在生产服务器上也能正常工作。将不得不对原因进行更多的研究。

第3版:似乎是导致问题的原因在注册表中LogRewritenUrlEnabled设置为false,以便在使用动态内容压缩(gzip)的同时允许url重写,因此必须找到另一种方法来启用此

使用mvc捆绑包重建url

您是对的,如果您更改脚本的内容,那么缓存阻塞器哈希应该会更改。这里有一些关于捆绑缓存如何工作的有用信息,这些信息可能会对您的ASP.NET MVC捆绑缓存有所帮助。(检测css文件更改)(内部行为)。

问题是我们在服务器上的注册表

HKEY_LOCAL_MACHINE'SOFTWARE'Microsoft'InetStp'Rewrite /v LogRewrittenUrlEnabled set to false

如果你有,那么当内容i捆绑包发生更改时,缓存buster哈希不会刷新。