Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Caching 在任何情况下,如何阻止IIS缓存任何文件?_Caching_Iis Express - Fatal编程技术网

Caching 在任何情况下,如何阻止IIS缓存任何文件?

Caching 在任何情况下,如何阻止IIS缓存任何文件?,caching,iis-express,Caching,Iis Express,我为工作做了一些web开发,对我的生产力影响最大的是IIS。它缓存即使更改也不会更新的文件,除非我重新启动IIS。具体来说,我指的是html、js和css文件。这个问题迫使我不断地停止和启动web应用程序。因为我有Windows7,我相信我有ISS7.5。我正在使用IIS Express。这是如此令人沮丧,我宁愿IIS永远不要缓存任何东西,永远。我对停止所有形式的缓存或仅针对我正在处理的项目的解决方案很满意 IIS管理器对我不可用。它不位于系统和安全->管理工具->IIS管理器中,建议类似。另外

我为工作做了一些web开发,对我的生产力影响最大的是IIS。它缓存即使更改也不会更新的文件,除非我重新启动IIS。具体来说,我指的是html、js和css文件。这个问题迫使我不断地停止和启动web应用程序。因为我有Windows7,我相信我有ISS7.5。我正在使用IIS Express。这是如此令人沮丧,我宁愿IIS永远不要缓存任何东西,永远。我对停止所有形式的缓存或仅针对我正在处理的项目的解决方案很满意

IIS管理器对我不可用。它不位于系统和安全->管理工具->IIS管理器中,建议类似。另外,在开始搜索框中搜索inetmgr不会得到任何结果。因此,我正在寻找IIS applicationhost.config文件的修复程序

我已尝试将以下内容放入applicationhost.config中,但不起作用:

<location path="ProjectName">
    <system.webServer>
        <staticContent>
           <clientCache cacheControlCustom="public" cacheControlMode="DisableCache" />
        </staticContent>
       <caching enabled="false" enableKernelCache="false"></caching>
    </system.webServer>
</location>

关于StackOverflow与我的问题最接近的问题是。然而,Fiddler告诉我,即使旧文件已被更改,它们仍将被发送到浏览器


IIS如何在不重新启动的情况下向我的浏览器发送更新的文件?

很可能是浏览器造成的。
你试过ctrl+F5吗

我怀疑您启用了输出缓存,这将显示您正在描述的行为,回收应用程序池或重新启动IIS将清除它们并允许您查看新内容

本页提供了更多信息

如果您使用的是IIS Express,则很可能在web.config中的应用程序级别或在单个页面上设置了缓存

你需要设置

<caching>
   <outputCache enableOutputCache="false" />
</caching>

或者如果其IIS 7+(将使用哪个IIS Express)


如果有人无意中发现了这一点,并希望通过“鼠标点击”的方式禁用IIS 7中的缓存或其他功能。。。以下是IIS论坛的答案:

以下是IIS 7.5(在Windows 7中)的更新。禁用缓存是一个非常重要的问题 在开发过程中,当您不关心 性能,并希望看到立即发生更改。它加速 加快开发进程。 -启动IIS管理器(在“开始”菜单中的搜索程序和文件中键入IIS) -导航到连接树中所需的站点(默认网站) -开放输出缓存 -编辑要素设置 -取消选中启用缓存并启用内核缓存

您可以在web.config文件中获得如下设置:

<caching enabled="false" enableKernelCache="false">
            <profiles>
                <add extension=".css" policy="DontCache" kernelCachePolicy="DontCache" />
                <add extension=".script" policy="DontCache" kernelCachePolicy="DontCache" />
            </profiles>
        </caching>


因此,这里没有标签。

浏览器是一个问题,他们的开发人员应该在列出的站点上添加一个选项来禁用缓存。然而,在大多数情况下,浏览器会按照服务器的指示执行,这意味着服务器配置……直到浏览器开发人员伸出手指为止。
<caching enabled="false" enableKernelCache="false">
            <profiles>
                <add extension=".css" policy="DontCache" kernelCachePolicy="DontCache" />
                <add extension=".script" policy="DontCache" kernelCachePolicy="DontCache" />
            </profiles>
        </caching>