首页 > 解决方案 > 当请求很大时,PHP Soap 服务器行为异常

问题描述

我们有一个 PHP 中的 Soap 服务器,它接收 Base64 格式的文件。

我们最近将生产服务器更改为另一台计算机。更改服务器后,现在发送的文件大时请求返回错误,但文件小时请求正常。具有大文件的相同请求适用于开发服务器和测试服务器,但不适用于生产服务器。

我调试服务器代码,当发送的文件很大时它的行为很奇怪。数据库查询返回 false 而不是表行。直接在数据库上运行相同的查询时效果很好,但在 php 代码上却不行。

当发送的文件很小时,一切正常,数据库查询返回表行,脚本正常工作,文件保存在服务器上。

我试图在 phpinfo() 上比较测试服务器和生产服务器。

我没有发现太大的区别。

生产服务器有 LAMP、CentOS、Apache、Mysql 和 PHP。

我试图将 php.ini 上的 memory_limit 提高到 3G 和 -1。我试图将 post_max_size 提高到 1G。我试图将upload_max_filesize 提高到1G。

但它还没有工作。

有人有什么想法吗?

标签: phpapachesoap

解决方案


我不知道为什么它只在生产服务器上失败。我优化了代码,现在它可以在生产服务器上运行。


推荐阅读