当前位置:  开发笔记 > 编程语言 > 正文

HTTP状态504

如何解决《HTTP状态504》经验,为你挑选了2个好方法。

当我的win32(c#)应用程序调用Web服务时,我收到以下错误.

The request failed with HTTP status 504: Gateway timeout server response timeout.

我理解'我认为'这是因为上游请求没有得到及时的响应.

但我的问题是这个?如何更改win32应用程序中的app.config设置以允许更多时间来处理其数据.我假设我要求在我的应用程序设置上进行这些更改,因为web服务和托管ws的IIS设置了更长的时间.

期待回复,并提前感谢您.

斯科特



1> james.garris..:

你不能.问题不在于您的应用程序不耐烦并且超时; 问题是中间代理不耐烦并超时."服务器在充当网关或代理时,没有收到来自URI指定的上游服务器的及时响应." (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.5)它很可能表明原始服务器存在某种问题,因此它无法快速响应转发的请求.

可能的解决方案,其中任何一个都不会让你开心:

增加代理的超时值(如果它在您的控制之下)

向不同的服务器发出请求(如果有另一台服务器具有相同的数据)

以不同方式提出您的请求(如果可能),以便您一次请求更少的数据

一旦服务器没有问题,请再试一次


这意味着源服务器(带有数据的Web服务器)对于代理(代表您尝试访问源服务器的中间服务器)来说太慢了.

2> Toon Krijthe..:

CheckUpDown 对504错误有一个很好的解释:

服务器(不一定是Web服务器)充当网关或代理,以满足客户端(例如您的Web浏览器或我们的CheckUpDown机器人)访问请求的URL的请求.此服务器未从其访问的上游服务器收到及时响应以处理您的HTTP请求.

这通常意味着上游服务器关闭(对网关/代理没有响应),而不是上游服务器和网关/代理不同意交换数据的协议.

此问题完全是由于后端计算机(可能包括Web服务器)之间的IP通信速度缓慢.只有在托管Web服务器的站点上设置网络的人才能解决此问题.

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有