Django + mod_python
Django + mod_python的部署方式的基础是我的上一篇文章。前提python、Django、Apache、Mod_python安装完备。
部署方式有两种:一是加直接在apache的httpd.conf下面加一个一个Location的元素:
<Location "/mysite/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE myblog.settings
PythonDebug On
PythonPath "[r'F:\\develope\\projects\\myblog'] + sys.path"
</Location>
主要留意两个参数:SetEnv DJANGO_SETTINGS_MODULE 指定你的Django应用的settings.py。PythonPath Python程序的路径,如果你的Django应用不在Sys.path里面,那么加上你的应用路径,注意,如果你的项目路径为:D:\\projects\myblog那么,Python Path应该填D:\\projects。
这样,你可以通过http://localhost/mysite来访问你的应用,不过有一个问题,Django会把“mysite”当作请求的URL的一部分。你必须要把URLConf里的配置全加上mysite。显然,这种做法并不是很理想的。
为解决上面的URL问题,可以通过VirtualHost来配置使用另一个虚拟机作为Django应用的所在地。所不同的是,还是可以从根目录下访问应用,不过使用了不同的端口:
Listen 127.0.0.1:81
<VirtualHost 127.0.0.1:81>
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE myblog.settings
PythonPath "[r'F:\\develope\\projects\\myblog'] + sys.path"
PythonDebug On
</Location>
</VirtualHost>
这一次,可以通过http://localhost:81/来访问应用了。
下面的文章讲述如何处理静态文件与FastCGI + Django
<EOF>
编程
jeff
1
python
评论(1条)