Apache не может получить доступ к приложениям Django - PullRequest
2 голосов
/ 12 октября 2010

так вот настройка:

Весь сайт работает нормально, если я удалю приложение (чье имя это myapp) в разделе INSTALLED_APPS в файле настроек я добавил WSGIPythonHome в apache2.conf

Я могу успешно получить доступ к приложениям через интерактивную оболочку Python в Django (python manage.py shell). Я могу создавать, обновлять и удалять данные.

Я использую стандартную настройку Apache 2 для Ubuntu 10.04 Lucid Lynx (сайты включены, включены моды, 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 (содержится в папке sites-available) содержит это (без других деталей):

WSGIDaemonProcess ygamretuta processes=2 maximum-requests=500 threads=1
WSGIProcessGroup ygamretuta
WSGIScriptAlias / /home/ygamretuta/dev/site1/apache/django.wsgi

Что я мог пропустить? Я получаю e 500 Internal Server Error, если пользовательские приложения (созданные мной с manage.py startapp) не закомментированы

1 Ответ

6 голосов
/ 12 октября 2010

Добавить /home/ygamretuta/dev/site1 к sys.path.

...