我有一个IIS / Windows 2008设置,其硬件负载均衡器将流量路由到站点A,它使用ARR作为站点B的反向代理。站点B也通过FastCGI运行PHP。
问题是我有时会在IIS日志中看到500个错误。站点B的失败请求跟踪显示了这个小宝石(我已经在墙上撞了几天):
GENERAL_READ_ENTITY_END BytesReceived =“1”,ErrorCode =“操作成功完成。(0x0)”
GENERAL_REQUEST_ENTITY Buffer =“_”
屏幕截图: http://s29.postimg.org/esbkcead3/iis500.png
相反,这是正常的请求:
GENERAL_READ_ENTITY_END BytesReceived =“3702”,ErrorCode =“操作成功完成。 (为0x0)” GENERAL_REQUEST_ENTITY Buffer =“......... {{实际数据;省略}} ..........”
所以看起来FastCGI正在获得一个损坏的缓冲区,我不太确定会发生什么。如果有人可以提供一些建议,我将非常感激。
谢谢!
(我认为绕过ARR时不会发生这种情况,但它似乎不具有确定性,因此我无法确定由于情况而给出有限的测试。无论如何,禁用ARR不是一种选择。 )