IIS 7.5 不压缩 Javascript:NO_MATCHING_CONTENT_TYPE

IIS 7.5 不压缩 Javascript:NO_MATCHING_CONTENT_TYPE

我已将 IIS 7.5 设置为压缩所有静态文件(默认),但它不会压缩 .js (javascript) 文件。当我打开压缩失败请求跟踪时,我收到的压缩错误是:

没有匹配的内容类型

我读过这篇文章,我看到的唯一解决方案是确保 application/x-javascript(而不仅仅是 application/javascript)被指定为被视为“静态”内容的 mimetype。因此,我调整了我的 applicationHost.config 以使其具有以下内容:

    <httpCompression>
        <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" dynamicCompressionLevel="5" />
        <scheme name="deflate" dll="%windir%\system32\inetsrv\gzip.dll" />
        <staticTypes>
            <add mimeType="text/*" enabled="true" />
            <add mimeType="message/*" enabled="true" />
            <add mimeType="application/javascript" enabled="true" />
            <add mimeType="application/x-javascript" enabled="true" />
            <add mimeType="*/*" enabled="false" />
        </staticTypes>
    </httpCompression>

但是,我仍然在失败请求跟踪日志中看到相同的错误:NO_MATCHING_CONTENT_TYPE。还有其他想法吗?

答案1

确保您已将.js文件映射到这些 MIME 类型之一(例如application/javascript'), and not something else entirely, e.g.text/javascript`。(如果您只是作为客户端使用 curl 或 wget 之类的工具对其中一个文件发出 HTTP 请求,那么服务器将以哪种 MIME 类型返回它?)

相关内容