我想GEOIP_COUNTRY_CODE
从以守护程序模式在 mod_wsgi 上运行的 Django 访问环境变量。问题是,我可以从服务器上运行的 PHP 脚本中看到该变量,但它似乎没有通过 WSGI 传递到我的 Django 站点。
request.META.get('GEOIP_COUNTRY_CODE')
不起作用。WSGIPassAuthorization
mod_wsgi 中是否有其他环境变量?
问问题
345 次
1 回答
1
如果该变量由扩展模块设置为环境变量,那么它将可以通过以下方式访问:
import os
value = os.environ['GEOIP_COUNTRY_CODE']
即,就像任何其他环境变量一样。
更新 1:
如果设置在 Apache 模块内部,例如 mod_geoip,则将其传输到 WSGI 应用程序领域的唯一方法是在 Apache 请求结构的 req.subprocess_env 中设置。即,与在 Apache 中使用 SetEnv 指令相同。在这种情况下,它应该出现在传递给 WSGI 应用程序的 WSGI 环境字典中。
要尝试验证是否发生这种情况,请使用 WSGI 回显测试脚本,如下所示:
http://code.google.com/p/modwsgi/wiki/DebuggingTechniques#Displaying_Request_Environment
于 2011-03-26T12:12:06.390 回答