У меня установлен Python, я могу запускать скрипты в командной строке. Но я хочу создавать с его помощью веб-страницы и использовать фреймворк Django.
Я прочитал много документации о том, как настроить и запустить django. Большая часть работы была выполнена с помощью apt-get install, который установил все необходимое, но с конфигурацией vhost у меня возникли проблемы. В настоящее время я получаю сообщение об ошибке сервера 500, а в журнале ошибок я вижу ошибку импорта.
Вот полный файл vhost:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName friendflix.me
ServerAlias www.friendflix.me
DocumentRoot "/srv/www/friendflix.me/public_html/"
ErrorLog /srv/www/friendflix.me/logs/error.log
CustomLog /srv/www/friendflix.me/logs/access.log combined
WSGIScriptAlias / /srv/www/friendflix.me/application/django.wsgi
<Directory /srv/www/friendflix.me/application>
Order allow,deny
Allow from all
</Directory>
<Location "/application">
SetHandler python-program
PythonOption django.root /application
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE settings
PythonPath "['/srv/www/friendflix.me/application', '/srv/www/friendflix.me/publ$
PythonDebug On
</Location>
Alias /static /srv/www/friendflix.me/public_html/static
</VirtualHost>
Хвост файла error.log
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] self.load_middleware()
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/base.py", line 39, in load_middleware
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] for middleware_path in settings.MIDDLEWARE_CLASSES:
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] File "/usr/local/lib/python2.6/dist-packages/django/utils/functional.py", line 276, in __getattr__
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] self._setup()
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] File "/usr/local/lib/python2.6/dist-packages/django/conf/__init__.py", line 42, in _setup
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] self._wrapped = Settings(settings_module)
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] File "/usr/local/lib/python2.6/dist-packages/django/conf/__init__.py", line 89, in __init__
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
[Sun Jun 19 21:28:07 2011] [error] [client 74.89.144.194] ImportError: Could not import settings 'settings' (Is it on sys.path?): No module named settings
Структура каталогов приложения (или хотя бы)
корень html
/srv/www/friendflix.me/public_html
корень приложения
/srv/www/friendflix.me/application
Конфигурация приложения Django/wsgi
/srv/www/friendflix.me/application/django.wsgi
Скрипт Django.wsgi
import os
import sys
sys.path.append('/srv/www/friendflix.me/application')
os.environ['PYTHON_EGG_CACHE'] = '/srv/www/friendflix.me/.python-egg'
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Любая помощь в исправлении этого была бы замечательной - спасибо! Богатый
django.wsgi
скрипт. У него нет правильной настройки дляsys.path
. - person S.Lott   schedule 20.06.2011