方案:我有一个用Visual Studio 2008开发的ASP.NET MVC应用程序。有一个名为“ Content”的根文件夹,用于存储图像和样式表。当我在本地运行(使用Cassini)并浏览我的应用程序时,始终会下载“内容”目录中的每个资源。使用Firebug,我可以验证Web服务器是否返回HTTP 200(“确定”)。

期望:我希望Cassini返回HTTP 304(“未修改”)而不是200。这是在IIS7下运行站点时的行为。

推理:我正在工作的网站具有大量静态资源(通常每页多达40个)。在IIS7上浏览站点非常快,因为这些资源(正确)由浏览器缓存。但是,在我的本地计算机上浏览站点的速度非常慢。

在IIS7上不到1秒的时间内渲染的页面需要30秒钟以上的时间才能在Cassini上渲染。对于我而言,每隔几分钟就上传整个网站并从那里进行测试实际上是更快的。 (是的,我知道这是不正当和疯狂的。)

因此:如何指示/欺骗Cassini像IIS7一样对待“ Content”目录?

最佳答案

您确定问题在缓存吗?因为当我在Cassini上运行应用程序时,内容确实正确缓存在我的计算机上。

我认为您遇到的问题可能是Firefox在解析IPv6地址方面的性能低下,这会导致对诸如http://localhost:55555之类的地址的加载产生非常令人讨厌的延迟。

我所做的更改是在Firefox上将network.dns.disableIPv6上的about:config首选项更改为true。我建议尝试一下。

关于asp.net - Cassini上的ASP.NET MVC:如何强制“内容”目录返回304(而不是200)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/795451/

10-10 21:40