我从我原来的后续问题的Django服务问题这是如何发展Django的应用程序,并从同一服务器为他们服务作为我的主要基于PHP的网站(从静态和PHP驱动的一个我的网站的大迁移的一部分以一系列的Django的应用程序)。
我不能完全用我得到了,而是刚刚部署使用mod_wsgi的不同的端口(8000)在我的Django应用程序的名称服务器解决方案。 然而,现在我需要真正的Django的应用程序集成到主站点。 在我的Apache 2.0配置文件(比如http://www.example.com )添加以下的ProxyPass指令(我mod_wsgi的初始化后):
ProxyPass /app/newsletter http://www.example.com:8000/app/newsletter
ProxyPassReverse /app/newsletter http://www.example.com:8000/app/newsletter
在这里,我想到的任何请求:
http://www.example.com/app/newsletter
将获得成功代理到:
http://www.example.com:8000/app/newsletter
和所有将是正确的与世界同步。
然而,这种情况并非如此。 Apache的挂起5分钟左右(手艺这一问题所需要的时间),然后吐出502代理错误 :
Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET /app/newsletter/.
Reason: Error reading from remote server
看着我的Apache 2.0的错误日志这种反应后,我看到的连续错误类似如下:
[Thu Sep 27 15:25:49 2012] [error] Exception KeyError: KeyError(****,) in <module 'threading' from '/usr/lib64/python2.6/threading.pyc'> ignored
因此,一些似乎是失职,要么mod_proxy的是如何发挥与Django和/或Python。 我有我使用的ProxyPass和ProxyPassReverse其他Java相关的过程和他们很好地工作。 此外,当我不尝试应用的ProxyPass Django的应用程式,都做工精良(即当我解决这些问题上的8000端口直接)。
有任何想法吗? 我不觉得我在做什么特别复杂。
提前致谢。