IIS 7.5静态内容压缩(不一致)

IIS 7.5静态内容压缩(不一致),iis,iis-7.5,gzip,http-compression,Iis,Iis 7.5,Gzip,Http Compression,我有以下web.config文件: <urlCompression doStaticCompression="true" /> <httpCompression> <dynamicTypes> <add mimeType="text/*" enabled="true" /> <add mimeType="message/*" enabled

我有以下web.config文件:

<urlCompression doStaticCompression="true" />
        <httpCompression>
            <dynamicTypes>
                <add mimeType="text/*" enabled="true" />
                <add mimeType="message/*" enabled="true" />
                <add mimeType="application/javascript" enabled="true" />
                <add mimeType="*/*" enabled="false" />
            </dynamicTypes>
            <staticTypes>
                <add mimeType="text/*" enabled="true" />
                <add mimeType="message/*" enabled="true" />
                <add mimeType="application/javascript" enabled="true" />
                <add mimeType="*/*" enabled="false" />
            </staticTypes>
        </httpCompression>

May plan不允许动态压缩

问题是,当我请求css或js时,IIS用GZIP响应并添加vary:有时接受编码,而其他时间不压缩css或js,我找不到模式,这是某种随机的

我总是尝试按CTRL键F5,即使您访问www.mysite.com时css和js是否被随机压缩

注意:托管在NetworkSolution上

我的配置或IIS有什么问题


谢谢

经过大量搜索,我终于找到了在我的IIS 7.5上使压缩工作更加一致的方法。 首先,除非经常加载文件,否则IIS不会压缩文件。这就提出了一个问题:“IIS经常考虑什么?”好,默认值是每10秒2次。哎呀

此设置可以在web.config中更改,但需要先在applicationHost.config中解锁该节。以下是命令:

首先解锁该部分:

C:\Windows\System32\inetsrv\appcmd.exe解锁配置 /部分:system.webServer/serverRuntime

在配置路径“MACHINE/WEBROOT/APPHOST”处解锁“system.webServer/serverRuntime”部分

完成后,编辑web.config文件

<?xml version="1.0" encoding="UTF-8"?> <configuration>
    <system.webServer>
        <serverRuntime frequentHitThreshold="1" frequentHitTimePeriod="10:00:00" />
        ...

...
在本例中,我将其设置为每10小时命中一次文件。您可以根据需要调整这些值。以下是解释serverRuntime元素的文档:


我希望这有助于使您的压缩正常工作。

当我第一次尝试时,表示未压缩;第二次尝试时,表示已压缩!我在这里做了一个最近的回答,这将提供更多的解释:这甚至适用于动态内容压缩?