所以这里的设置:阿帕奇无法访问Django应用程序
整个网站工作正常,如果我删除了INSTALLED_APPS部分的应用程序(其名称 是MYAPP)在设置文件我加WSGIPythonHome中的Apache2 .conf
我可以通过Django中的交互式python shell(python manage.py shell
)成功访问这些应用程序。我可以创建,更新和删除数据。
我使用的是标准的Apache 2安装的Ubuntu 10.04清醒山猫(,MODS的启用,启用站点-apache2.conf等)
我正在位于virtualenv中的/ home/ygamretuta的/ dev/MyProject的
我的Django项目位于在/ home/ygamretuta的/ dev/site1的
错误日志文件说,这(最后2行):
File "/home/ygamretuta/dev/myproject/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
TemplateSyntaxError: Caught ImportError while rendering: No module named myapp
我django.wsgi包含此:
import os, sys
sys.path.append('/home/ygamretuta/dev')
os.environ['DJANGO_SETTINGS_MODULE'] = 'site1.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
我的虚拟主机site1.com文件(在网站可用文件夹包含)包含本(剥离的其他细节):
WSGIDaemonProcess ygamretuta processes=2 maximum-requests=500 threads=1
WSGIProcessGroup ygamretuta
WSGIScriptAlias//home/ygamretuta/dev/site1/apache/django.wsgi
什么可能我错过了什么?如果自定义应用程序(我使用manage.py startapp创建的应用程序)没有被注释掉,我得到e 500内部服务器错误
已经在django.wsgi中完成了,如上所述。我必须把它放在其他地方吗? – yretuta 2010-10-12 08:17:58
不,它不是。再看一遍。 – 2010-10-12 08:19:27
如果我用/ site1替换当前一个,它将导致错误无法导入设置'site1.settings',正如谷歌代码对WSGI Django集成所指出的,sys.path.append文件夹参数必须是父项django项目文件夹:“换句话说,它应该是你在'django-admin.py'运行时所在的目录,它也相当于目录的父目录,它包含'settings.py' django-admin.py startproject'。“ – yretuta 2010-10-12 08:30:02