@wzhang1117
2014-05-12T20:57:22.000000Z
字数 891
阅读 4230
wsgi
django
部署
django项目的根目录/var/www/django/
apt-get install apache2
apt-get install libapache2-mod-wsgi
#配置权限
chown www-data:www-data /var/www/django
chown www-data:www-data /var/www/django/db.sqlite3
vi /etc/apache2/httpd.conf #初始配置为空,添加以下内容
#如果不增加这一行,使用django自带的后台管理时无法加载对应的静态资源,具体路径可能跟系统有关,最好自己搜索定位
Alias /static/admin "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/static/admin"
#wsgi.py物理路径,这个文件时生成django项目时自动生成的,如果没有自动生成可能是因为django版本较低,需要手动建立
WSGIScriptAlias / /var/www/django/mysite/wsgi.py
#指定django项目根目录,如果不指定会导致wsgi加载配置时找不到相应模块
WSGIPythonPath /var/www/django/
#基本配置内容
<Directory /var/www/django/mysite>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>
在部署的过程前最好先阅读django官方文档;在部署的过程中遇到问题第一个想到的应该是阅读apache的错误日志(我在部署时WSGIPythonPath这个变量设置错误,一直报服务器内部错误,看日志发现时wsgi加载模块时出问题,再结合wsgi.py源码很快就定位了问题);在部署时一定要开启debug模式,容易发现问题,部署完之后再关闭debug模式