python – 在Nginx反向代理POST请求后面的CherryPy被破坏/截断
|
我使用Cherrypy 3.1.2将我的应用程序放在Nginx后面配置为反向代理. 我追溯到CherryPy WSGI-Server源代码以查看请求处理代码,并发现如果对于GET请求,第一个请求行正确读取,例如:
对于POST请求,它就像:
因此,对于包含GET / POST请求行和HTTP标头的正确形成的请求,我的应用程序从Nginx接收POST请求: >第一个HTTP标题行从开始截断一些字节数 此外,从p.1截断的字节数似乎取决于表单上有多少POST数据,例如,我在/ home FORM字段中输入的字符越多,HTTP标头中的字符就越多. 显然,当Nginx将标头传递给上游服务器(我的应用程序)时,它会以某种方式破坏标头. 所以我现在很困难. 我的配置是:Windows XP Prof,Python / 2.5.1,CherryPy / 3.1.2,Nginx / 0.8.32 我使用非常基本的Nginx配置,如:
虽然在网上找到了很多其他的proxy_pass示例和配置. 任何想法在哪里寻找问题? Nginx配置,我的CherryPy应用程序还是其他地方? 新:我发现它可以正常工作,但仅适用于具有零主体内容长度的POST请求(在没有任何字段的情况下为空测试).
在http块…也可能尝试禁用keepalive并确保您正在记录访问/错误以进行调试. (编辑:长春站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- nginx-使用certbot应用“加密证书:授权过程失败”
- 将Nginx和uWSGI Web服务器错误记录到Sentry
- 网络 – Nginx:直接在text / plain中返回$remote_addr
- 如何在同一个域上部署WordPress站点和Django站点?
- nginx – 将URL映射到文件系统
- ssl – 如果存在标头,则Nginx设置proxy_set_header
- node.js – 你应该如何处理auth并在微服务之间共享用户信息
- 在Nginx中自动版本化CSS / JS
- ruby-on-rails – 如何配置nginx Unicorn以避免超时错误?
- 配置 – Nginx:指定访问日志位置时我可以使用$server_name
