非法304 HTTP响应?

所以这是一个有趣的问题,我甚至不确定从哪里开始看这个问题。 我有一个用C#编写的MVC3应用程序,列出了在线广告。 在主页上,它会显示已放置照片的10个最新广告的列表。 在Chrome中查看此页面 。 在第一页加载时,它加载就好了。 现在点击F5。 它将继续在浏览器标签中显示“加载”指示符,如果向下滚动,则不会显示2或3个广告图像。 奇怪的是,它总是在页面的同一区域(可能是第6,第7或第8张图像)中的图像。 它永远不是最初的几个,它永远不会是最后一个。

这只发生在Chrome中,只有在您点击F5时才会发生。 如果您单击顶部的“Equispot”徽标(将您重定向到主页),它可以正常工作。

有谁知道可能导致此问题的原因或如何解决此问题?

编辑 :我想我可能会到达某个地方。 Fiddler表示未显示的图像有500错误。 这是错误:

[Fiddler]响应标头解析失败。 这可能是由于此次重用服务器套接字上的非法HTTP响应引起的 – 例如,非法包含正文的HTTP / 304响应。

由于我的所有图像都被缓存,并且在丢失图像之前有几个304响应,这似乎是一个可能的罪魁祸首。 不知道如何处理修复,因为这对我来说是一个陌生的领域。

发现了问题。 我有一个FileCache属性,它为缓存图像的响应添加了不必要的字节。 删除了,问题解决了,控制器现在返回0字节304响应。

根据我的Chrome的网络监视器,访问xd_proxy.php似乎会出现问题,在页面刷新时,它似乎没有返回。

{"pageref":"http://static.ak.fbcdn.net/connect/xd_proxy.php?version=3#cb=f2583cfee4&origin=http%3A%2F%2Fwww.equispot.com%2Ff1f91777c&relation=parent.parent&transport=postmessage&type=resize&height=20&ackData[id]=1&width=90", "startedDateTime":"2011-07 10T15:01:26.361Z", "time":1,"request": {"method":"GET","url":"http://static.ak.fbcdn.net/connect/xd_proxy.php?version=3#cb=f2583cfee4&origin=http%3A%2F%2Fwww.equispot.com%2Ff1f91777c&relation=parent.parent&transport=postmessage&type=resize&height=20&ackData[id]=1&width=90", "headers":[], "queryString":[{"name":"version","value":"3#cb"},{"name":"origin","value":"http%3A%2F%2Fwww.equispot.com%2Ff1f91777c"},{"name":"relation","value":"parent.parent"},{"name":"transport","value":"postmessage"},{"name":"type","value":"resize"},{"name":"height","value":"20"},{"name":"ackData[id]","value":"1"},{"name":"width","value":"90"}], "cookies":[],"headersSize":-1,"bodySize":-1},"response":{"status":0,"statusText":"","headers":[],"cookies":[],"content":{"size":2575,"mimeType":"text/html"},"redirectURL":"","headersSize":-1,"bodySize":2575},"cache":{},"timings":{"blocked":0,"dns":-1,"connect":-1,"send":-1,"wait":-1,"receive":0,"ssl":-1}}