关于python:在OS X上使用django和mod-wsgi的解决方案的简单步骤

Baby steps to a solution with django and mod-wsgi on os x

我正在运行apache / os x并提供localhost页面以在笔记本电脑上测试Django。我已经验证了以下所有

a€¢ python工作正常且最新(2.5.1)

可用于python且最新(1,1,0,'final',0)的django

mod_wsgi模块已在我的apache配置中的apache模块中加载-检查!

django应用程序的路径位于vhost.conf中且具有适当的权限-确定!

mod_wsgi vhost.conf经过测试,可以在预期的Django应用程序目录中正常运行
-通过本地主机测试应用程序会弹出200 OK," hello world!"

已使用'django-admin.py startproject mysite'创建了django默认应用程序

使用开发服务器在端口8000上运行django应用程序可以正常工作-

新django应用程序的路径(称为mysite)在python路径上-已验证!

所有这些都已验证,当我使用DJANGO_SETTINGS_MODULE settings.py运行wsgi脚本并加载django应用程序时,我仍然得到"无法导入设置" mysite.settings"等。

由于这似乎涵盖了基本的故障排除方法,我是否可以采取进一步的措施来发现问题?

================

Python路径有效,已验证。使用端口8000上的命令行,django开发服务器可以正常运行。

apache配置加载了典型的模块:
LoadModule wsgi_module libexec / apache2 / mod_wsgi.so

vhost.conf包含在apache config中,如下所示

NameVirtualHost:* .80

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    <Directory /users/useracct/scripts/python>
            Order allow,deny
            Allow from all
    </Directory>

    <Directory /Library/WebServer/Documents>
            Order allow,deny
            Allow from all
    </Directory>
    WSGIDaemonProcess localhost user=username group=staff threads=25
    WSGIProcessGroup localhost

    WSGIScriptAlias /mysite /users/useracct/Sites/mysite/mysite.wsgi

    <Directory /users/useracct/Sites/mysite/>
            Allow from all
    </Directory>

    DocumentRoot /Users/useracct/Sites/

未为此帐户设置Virtualenv,因此这是一种较少的可能原因。

======================

和wsgi脚本文件(试图将其最小化):

1
2
3
4
5
6
7
8
import os, sys
path = '/users/usracct/sites/mysite'
if path not in sys.path:
    sys.path.append(path)

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()


尝试将/ users / useracct / Sites / a添加到wsgi文件中的pythonpath中:

1
2
3
4
5
import os
import sys
.....
sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..')
....