根据本文档,您可以在 Windows Server 2016 上配置 IIS 10 以写入自定义字段,只要“自定义字段中添加的数据总量不能超过 65,536 字节”
我已经配置了一个自定义字段来将 Header 中的 cookie 和服务器变量中的另一个 cookie 写入日志,这工作得很好。
但是无论我在 maxCustomFieldLength 中输入什么值,都只会将 4096 个字节写入日志。
当我在 cookie 中发送 8k 数据时,我:
- 将 maxCustomFieldLength 设置为 4096 我在日志文件中只得到 2048 个字节。
- 将 maxCustomFieldLength 增加到 65536,我在日志文件中只得到 4096 个字节。
我已经使用 fiddler 验证了浏览器请求正在发送完整的 8k cookie 值,并且它们没有在客户端将值截断为 4096。
任何想法为什么 IIS 将 cookie 值截断为 4096 并且不遵守大于 4096 的 maxCustomFieldLength?