You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IIS 10返回201状态码时响应不压缩问题的解决方案问询

根因说明

IIS 10 调整了默认的压缩规则,仅对状态码为200的响应执行压缩操作,和IIS 6/7.5默认包含201状态码的配置规则不同,这是版本默认配置差异导致的问题。

可行解决方案

方案1:全局配置(对服务器所有站点生效)

  • 以管理员身份运行命令提示符,执行以下命令添加201状态码的压缩许可:
    %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/httpCompression /+"doCompressionForHttpStatusCodes.[statusCode='201',subStatusCode='*']" /commit:apphost
  • 执行iisreset重启IIS服务使配置生效。

方案2:站点级配置(仅对指定站点生效)

在对应站点的web.config文件中添加如下配置节点:

<system.webServer>
  <httpCompression>
    <doCompressionForHttpStatusCodes>
      <add statusCode="201" subStatusCode="*" />
    </doCompressionForHttpStatusCodes>
    <!-- 如需压缩其他非200状态码的响应,可在此处追加对应statusCode配置 -->
  </httpCompression>
</system.webServer>

保存配置后重启站点即可生效,无需修改全局服务器配置。

注意事项

  • 需确认你要压缩的201响应对应的MIME类型已被加入压缩列表:动态响应(如接口返回的JSON/XML)需在dynamicTypes节点中配置,静态资源需在staticTypes节点中配置,且对应项的enabled属性为true。
  • 如果配置后仍不生效,可检查请求头是否包含Accept-Encoding: gzip, deflate, br,IIS只会在客户端明确声明支持压缩时返回压缩后的响应。

内容的提问来源于stack exchange,提问作者G Aggrey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 13:27:03