webdancer's Blog
Ubuntu 10.04 下django 部署到apache服务器
由于django自带的服务器,对静态的文件支持不好。所以,决定将django工程部署到apache服务器上,下面记录一下大致的过程。
1.安装apache服务器。
1 | sudo aptitude search apache |
搜索一下,安装:
1 | sudo aptitude install apache2 |
2.安装插件。django与服务器连接有好几个插件,我用的是:mod_wsgi(http://code.google.com/p/modwsgi/).在10.04下:
1 | sudo aptitude search apache| grep wsgi |
搜索一下,安装:
1 | sudo aptitude install libapache2-mod-wsgi |
3.配置。
我的工程位于Ubuntu主目录下面,根据django的文档:
1).apache配置。
编辑/etc/httpd.conf,
1 2 3 4 5 6 7 8 9 | AliasMatch ^/([^/]*\.css) ~ /bookmarks/media/ $1 Alias /media/ ~ /bookmarks/media/ <Directory ~ /bookmarks/media > Order deny,allow Allow from all < /Directory > WSGIScriptAlias / ~ /bookmarks/apache/django .wsgi |
/:程序url起始位置。
~/bookmarks/apache/django.wsgi:工程目录下,新建apache目录,建立django.wsgi文件。
2)编辑django.wsgi文件:
1 2 3 4 5 6 7 8 9 10 11 | import os import sys sys.path.append( '~' ) sys.path.append( '~/bookmarks' ) os.environ[ 'DJANGO_SETTINGS_MODULE' ]= 'bookmarks.settings' import django.core.handlers.wsgi application=django.core.handlers.wsgi.WSGIHandler() |
参考:http://docs.djangoproject.com/en/1.2/howto/deployment/modwsgi/
http://code.google.com/p/modwsgi/wiki/InstallationOnLinux。
记得,重新启动apache,
1 | sudo apache2ctl restart |
配置完成后,不知道为什么刚开始不行,刷了几次,就OK了。