Apache和mod_wsgi在发布特定SVG字符串时返回504错误

Apache和mod_wsgi在发布特定SVG字符串时返回504错误,apache,http,mod-wsgi,http-status-code-504,Apache,Http,Mod Wsgi,Http Status Code 504,当我发布特定的SVG字符串时,Apache+mod_wsgi中出现了一个wierd 504错误。后端应用程序是PythonFlask,但它似乎根本无法访问应用程序 以下是一个返回504错误的请求: curl 'https://some.domain.com/api/export/png' --data 'svg=%22%3E%28style' 这是另一个带200的返回: curl 'https://some.domain.com/api/export/png' --data 'svg=%22

当我发布特定的SVG字符串时,Apache+mod_wsgi中出现了一个wierd 504错误。后端应用程序是PythonFlask,但它似乎根本无法访问应用程序

以下是一个返回504错误的请求:

curl 'https://some.domain.com/api/export/png' --data 'svg=%22%3E%28style' 
这是另一个带200的返回:

curl 'https://some.domain.com/api/export/png' --data 'svg=%22%3E%28styl' 
区别在于我只从POST数据中删除了一个字符

SVG数据被缩减为可能产生错误的最小数据。原始SVG字符串要大得多

apache错误日志中出现的错误为:

[Tue Jun 09 14:27:26 2015] [error] [client X.X.X.X] (104)Connection  reset by peer: mod_wsgi (pid=19254): Unable to get bucket brigade for request., referer: https://some.domain.com/
[Tue Jun 09 14:27:26 2015] [error] [client X.X.X.X] mod_wsgi (pid=19252): Exception occurred processing WSGI script '/var/www/ade/src/interface.wsgi'.
[Tue Jun 09 14:27:26 2015] [error] [client X.X.X.X] IOError: failed to write data
有趣的是,在我发出请求之后,在post数据上传完成之前,错误日志中几乎会出现错误

以下是我们的版本号:

Ubunut 12.04
Apache/2.2.22 (Ubuntu) 
mod_ssl/2.2.22 
OpenSSL/1.0.1 
mod_wsgi/3.3 
Python/2.7.3
有什么线索导致这一切吗

更新:我们将mod_wsgi更新为4.4.12,错误消息在error.log中更改

[Wed Jun 10 05:48:35 2015] [error] [client X.X.X.X] mod_wsgi (pid=5019): Request data read error when proxying data to daemon process: Connection reset by peer., referer: http://devade.annalect.com/
这可能与web服务器前面的AWS负载平衡器有关。我们将为此进行调查。

您使用的是mod_wsgi嵌入式模式还是守护程序模式?你不能使用这样一个古老的mod_wsgi版本吗?@GrahamDumpleton,我刚刚更新到3.5,我得到了同样的东西。它以守护进程模式运行,最新版本为4.4.12。版本3.5仍然非常过时。@GrahamDumpleton,刚从git hub主分支更新到4.4.12。仍然收到504错误,但apacheerror.log中的错误消息已更改(请参阅问题更新)。这可能与mod_wsgi毫无关系。。。apache前面有一个AWS负载平衡器,因此尝试在这一端进行投资。在apache配置中,超时指令设置为什么?您为WSGIDaemonProcess指令提供了哪些选项?应用程序处理此请求需要多长时间?