2014-10-30 64 views
0

我对PHP/SOAP客户端问题有疑问。我已经在stackoverflow.com上搜索了一个解决方案,但是我还没有找到什么能让我找到解决方案的东西。PHP SOAP客户端返回超过30 MB的CGI错误响应

我写了一个PHP-Soap-客户端,它向.NET-Webservice发送请求。这个Web服务的一个功能是接收文档。每件事情都可以正常工作,直到收到的文件不超过30 MB。如果我尝试获取大于30 MB的文档,则服务器将返回CGI错误。

我运行PHP-Soap-Client的服务器是带有IIS6的Windows 2003标准。 PHP-Version是5.2.17(对不起,我知道这个版本是旧的版本,但我不能更新PHP,因为需要扩展)。

有没有人有这样的问题,并解决了它?或者有人可能有解决方案吗?

问候 马库斯

+0

它返回什么错误? – 2014-10-30 18:49:36

+0

它只返回 CGI错误 指定的CGI应用程序由于未返回一组完整的HTTP标头而出现异常。 没有更多:-( 我已经用SoapUI测试了这个请求,那里的一切都是正确的... ResponseHeader,ResponseBody ...。 – 2014-10-30 19:06:52

+0

我不太清楚PHP SOAP客户端究竟做了什么,它是否下载或者上传一些大的文档到web服务,你能澄清吗? – 2014-10-30 20:00:43

回答

0

尝试验证您的php.iniupload_max_filesizepost_max_size属性的值,看看他们所造成的约束。

他们应该是这个样子的你php.ini

; Maximum allowed size for uploaded files. 
upload_max_filesize = 40M 

; Must be greater than or equal to upload_max_filesize 
post_max_size = 40M 

一个需要注意的,并引用doc

要上传大文件,该值(post_max_size)必须大于 upload_max_filesize如果您的配置 脚本启用了内存限制,则memory_limit也会影响文件上传。一般来说, memory_limit应大于post_max_size

+0

感谢您的建议。我已经将所有建议的值设置为60M(可以从Web服务器接收的最大文件大小),并将内存限制为512M它的作品 – 2014-11-03 13:53:00

+0

@MarkusTamler真棒。如果你喜欢我的答案,请考虑upvoting和接受它。谢谢! – 2014-11-03 16:15:05