最近我在Apache上使用django和mod_wsgi。
我按照网页中的以下步骤操作:
“我的应用程序在/ mnt / www /中,被称为mysite的名称,apache并在mysite媒体目录中创建,然后执行以下操作:”
创建apache_django_wsgi.conf文件,如下所示:
Alias / site_media / / mnt / www / mysite / media /
<Directory /mnt/www/mysite/media>
Order allow, deny
Options Indexes
Allow from all
IndexOptions FancyIndexing
</ Directory>
Alias / media / / usr/local/lib/python2.5/site-packages/django/contrib/admin/media /
<Directory /usr/local/lib/python2.5/site-packages/django/contrib/admin/media>
Order allow, deny
Options Indexes
Allow from all
IndexOptions FancyIndexing
</ Directory>
WSGIScriptAlias / / mnt / www / mysite / apache / django.wsgi
<Directory /mnt/www/mysite>
Order deny, allow
Allow from all
</ Directory>
<Directory /mnt/www/mysite/apache>
Allow from all
</ Directory>
创建django.wsgi文件,如下所示:
import os, sys
# Calculate the path based on the location of the WSGI script.
apache_configuration = os.path.dirname (__file__)
project = os.path.dirname (apache_configuration)
workspace = os.path.dirname (project)
sys.path.append (workspace)
os.environ ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
os.environ ['PYTHON_EGG_CACHE'] = '/ tmp'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler ()
print>> sys.stderr, sys.path
我已经按照这些步骤进行了操作,但是当我通过浏览器在Apache下运行它时,我得到了500个Internet服务器错误。然后我检查了erro_log:它说:“TemplateSyntaxError:渲染时抓住了ImportError:没有名为friends的模块”(朋友是我模块之一的名字)
我的网站路径是/ var / BigPrject / mysite
答案 0 :(得分:6)
除了项目文件夹不在python路径中之外,一切看起来都不错。
您可以转到控制台并尝试import friends
来验证它。
我猜,你可以通过在你的wsgi
文件中添加以下行来解决这个问题:
sys.path.append (project)