在工作中,我们的主机最近将我们的服务器配置为并行运行多个Django项目,但有些事情并不完全正确。有两个主要问题。
更改不会立即生效。首次部署(或更改)站点时,将会有几个小时的延迟时间。这通常意味着不断出现500次错误。
一旦所有东西都安定下来,网站会在某些时候工作,但它们会随机破坏。他们首先说没有错误消息,但他们最终给了我检查日志文件的权限。它似乎是随意加载不同设置文件的不同部分。在下面的回溯中,从URL 1发出请求,然后服务器在URL 2的目录中查找,并尝试加载wsgi.py中为URL 3定义的设置模块。但就像我说的,这不会发生每次。有时网站会正确加载。
我已经在我自己的主机上测试了这些项目,一切都按预期工作,但我在主机上没有权限来检查httpd.conf的确切配置和其他各种必要的东西。我也没有足够的经验与apache盲目猜测问题是什么,所以我在这里不知所措。我应该问什么具体的配置问题?
提前致谢。
mod_wsgi (pid=####): Exception occurred processing WSGI script '/srv/www/**<url-project 1>**/wsgi.py'.
Traceback (most recent call last):
File "/srv/www/**<url-project 2>**/.local/lib/python2.7/site-packages/django/core/handlers/wsgi.py", line 236, in __call__
self.load_middleware()
File "/srv/www/**<url-project 2>**/.local/lib/python2.7/site-packages/django/core/handlers/base.py", line 45, in load_middleware
for middleware_path in settings.MIDDLEWARE_CLASSES:
File "/srv/www/**<url-project 2>**/.local/lib/python2.7/site-packages/django/conf/__init__.py", line 53, in __getattr__
self._setup(name)
File "/srv/www/**<url-project 2>**/.local/lib/python2.7/site-packages/django/conf/__init__.py", line 48, in _setup
self._wrapped = Settings(settings_module)
File "/srv/www/**<url-project 2>**/.local/lib/python2.7/site-packages/django/conf/__init__.py", line 134, in __init__
raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings '**<url-project 3>**.settings.production' (Is it on sys.path?): No module named **<url-project 3**>.settings.production
答案 0 :(得分:1)
请务必阅读:
不要在WSGI脚本文件中使用os.environ.setdefault(),因为现在由Django生成。改为改为os.environ [...]。
答案 1 :(得分:0)
此处有更多信息:http://modwsgi.readthedocs.org/en/latest/configuration-directives/WSGIApplicationGroup.html