我有一个问题与apache2和wsgi我发送我的服务器一个请求与自定义字段的头(HTTP_X_SOURCE)和apache2(或wsgi)阻止这个字段。请求=> apache2 => web.py
有谁知道为什么apache2或wsgi阻塞这个字段?
我在这里找到了答案http://httpd.apache.org/docs/current/env.html#fixheader
"_"字符在"HTTP_X_SOURCE"是禁止的。出于安全考虑,Apache 2.4比Apache 2.2更严格。
使用说明:
- http://code.google.com/p/modwsgi/wiki/DebuggingTechniques Displaying_Request_Environment
来验证它是否到达了托管在mod_wsgi下的WSGI应用程序。
应该能通过。问题可能是你如何试图在web.py中访问它,但你没有显示你是如何做的代码。
我用web.ctx.env访问这个变量
web.ctx.env.get (HTTP_X_SOURCE)
这段代码在另一个服务器上运行良好,使用apache 2和wsgi。
在我的新服务器(ubuntu 13)
测试纯web.py(没有apache没有wsgi),变量通过
用apache2-wsgi+web.py测试变量不通过
在我的旧服务器(ubuntu 12)
测试纯web.py(没有apache没有wsgi),变量通过
用apache2-wsgi+web.py测试变量pass too