2011-03-09 142 views
3

我在尝试从支付提供商(WorldPay)获取发布请求到我的主机服务器时遇到了一些问题。如果交易成功,WorldPay基本上会对我网站上的脚本进行回调。问题是帖子请求没有得到我的脚本 - 我们只是得到一个408超时。HTTP POST不能正常工作(408错误)

这是WorldPay的下方发送的请求:

POST /index.php?route=payment/worldpay/callback HTTP/1.0 
Content-Type: application/x-www-form-urlencoded; charset=UTF-8 
Host: www.mysite.com 
Content-Length: 711 
User-Agent: WJHRO/1.0 (WorldPay Java HTTP Request Object) 

authAmountString=%26%23163%3B3.49&_SP.charEnc=UTF-8&desc=testItem&authMode=A 

这是从我的主机服务器发回的响应:

HTTP/1.1 408 Request Timeout 
Connection: Close 
Pragma: no-cache 
cache-control: no-cache 
Content-Type: text/html; charset=iso-8859-1 

我知道这是一个长镜头,但任何人都可以看到上面的东西有什么不对?为了简化我用一个基本的html输出替换了php脚本,它返回了一个hello world消息,我们仍然有一个408,所以我很确定这个脚本能够工作。我们也有过这种错误一次或两次:

failed CAUSED BY invalid HTTP status line: >null< 

任何帮助是极大的赞赏

干杯

保罗

+0

检查“client_body_timeout”有没有可能请求WorldPay的发送是https? – Tsadiq 2011-03-09 15:23:25

+0

不,它确定不是不 - 你问为什么? – Pjn2020 2011-03-09 15:25:56

+0

,因为我不能没有理由,所以我正在寻找替代解决方案:-) – Tsadiq 2011-03-09 15:27:15

回答

2

如果上面给HTTP请求是否准确,它好像客户端宣传的内容长度为711字节,但实体主体长度似乎不超过711字节。这就是服务器等待其余数据超时的原因。

0

HTTP/1.1 408请求超时,

讲究服务器配置,如果你的主机服务器是nginx的,你可以在nginx.conf