代码之家  ›  专栏  ›  技术社区  ›  Portman

cassini上的ASP.NET MVC:如何强制“content”目录返回304s而不是200s?

  •  13
  • Portman  · 技术社区  · 16 年前

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

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

    推理 :我正在处理的站点有大量静态资源(通常每页多达40个)。在iis7上浏览站点非常快,因为浏览器(正确)缓存了这些资源。然而,在我的本地机器上浏览这个站点是非常缓慢的。

    在iis7上1秒以下呈现的页面在cassini上呈现需要30秒以上。事实上 更快 我每隔几分钟上传一次整个网站,然后从那里开始测试。(是的,我知道这是反常和疯狂的。)

    所以: 我如何指导/欺骗卡西尼像iis7一样处理“内容”目录 ?

    3 回复  |  直到 12 年前
        1
  •  27
  •   Çağdaş Tekin    16 年前

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

    我认为你遇到的问题可能是火狐在解析ipv6地址时性能欠佳,这会导致加载地址(如 http://localhost:55555 .

    我所做的是改变这种行为 network.dns.disableIPv6 偏爱于 about:config true 关于火狐。我建议你试试。

        2
  •  15
  •   Robert Massa    12 年前

    我在铬合金上也遇到过类似的问题。要解决此问题,请取消对您中的IPv4本地主机行的注释 hosts 文件。显然,这些在Windows7中是默认注释的。

    127.0.0.1       localhost
    #::1             localhost
    
        3
  •  2
  •   Tomas Aschan    16 年前

    你的另一个选择就是跳过卡西尼号 debug under IIS .这很简单,不需要十分钟就可以起床跑步。浏览20页关于卡西尼的文章,你已经使用了这段时间;)

    我注意到的一件事并不总是在指南中,那就是如果你想在不同的地址上调试 http://localhost/ 您需要手动将主机设置为本地IIS。这是通过在 hosts 文件,位于

    C:\windows\system32\drivers\etc\hosts/主机

    使用记事本打开文件(如果您使用Windows Vista并打开用户帐户控制,则需要“以管理员身份运行”才能保存)并添加主机。例如,调试 http://mysite/ 你加

    mysite         127.0.0.1
    
    推荐文章