从IIS 6升级到IIS 7后,我在Web浏览器中收到以下错误(Safari和其他浏览器中的类似错误):“无法解码原始数据”。通过更改:
临时修复此错误response.buffer = false
到
response.buffer = true
我需要将其设置为“false”,以便在生成文件时显示文件,而不是一次性显示文件(在相当长的时间之后)。
我已经尝试在ApplicationHost.config文件中增加bufferingLimit,但是当response.buffer设置为“false”时,我仍然会收到此错误。有谁知道这个问题可能来自哪里?
答案 0 :(得分:1)
是的,这个问题是真的,我也遇到过这种问题,但无法想出办法。 'Response.Buffer = false'不起作用的原因是Microsoft在其后期版本IIS中修改了他们的代码,即IIS 5.0-7.5,在这些版本的IIS中,Response.Buffer通过义务处理true。所以这是IIS的误报设置,无论你设置缓冲区OFF还是buffer.limit = 0.我认为微软搞砸客户端是因为他们希望客户购买他们最新的软件。 Response.buffer = false可以使Web应用程序更强大,因此他们确实希望您在旧应用程序中使用它。所以,让我们说这是商业伎俩。