Posted on 2007-01-13 15:24
pts 阅读(2761)
评论(0) 编辑 收藏
早上起来开始到现在捣鼓成功,花费5个小时,步骤如下:
1、下载apache2.2,并安装,测试http://127.0.0.1/,看到
It works!
2、下载安装django。由于已经使用着django,因此这一步就略过了。
3、从http://apache.mirrors.hoobly.com/httpd/modpython/win/3.3.0b/下载mod_python。注意下载的版本和已经安装的python版本相符。
4、修改apache的配置文件httpd.conf,在加载module部分添加一行
LoadModule python_module modules/mod_python.so
5、可以测试一下mod_python是否运行正常。
方法:修改httpd.conf,在最后添加
<Location /mpinfo>
SetHandler mod_python
PythonHandler mod_python.testhandler
</Location>
启动apache,测试http://127.0.0.1/mpinfo是否看到配置信息。
6、创建一个django project,路径为j:\django,名字mysite,使用django的方法运行server先测试一下是否正常。
7、关键一步了。
在httpd.conf文件中添加:
#<Location "/mysite/">
# SetHandler python-program
# PythonPath "['j:\django'] + sys.path"
# PythonHandler django.core.handlers.modpython
# SetEnv DJANGO_SETTINGS_MODULE mysite.settings_apache
# PythonDebug On
#</Location>
#
#<Location "/media/">
# SetHandler None
#</Location>
#
#<LocationMatch "\.(jpg|gif|png)$">
# SetHandler None
#</LocationMatch>
当然要去掉“#”。注意红字部分,应该是包含创建的project的目录,不含project。如果设置成j:\django\mysite,会导致apache找不到mysite.settings_apache配置文件。同时settings_apache后面没有“.py”。
由于设置的配置文件为settings_apache,因此需要复制settings.py to settings_apache.py一份。
如果settings_apache.py中使用的有相对路径,需要修改为绝对路径,主要注意DATABASE_NAME、MEDIA_ROOT、TEMPLATE_DIRS、STATIC_PATH(好像不改为绝对路径也可)。
如果你不想每次重启 Apache 来进行测试,可以将:
MaxRequestsPerChild 0 改为: MaxRequestsPerChild 1
基本完成了,然后就是测试http://127.0.0.1/mysite/
9、其他:可能还需要修改urls.py中的路径匹配设置,将mysite加在各个匹配项前。 如 (r'^address/', include('mysite.address.urls')),
改为
(r'^mysite/address/', include('mysite.address.urls')),
参考资料:
1、Django Step by Step (十二) by limodou
2、
HOWTO: Django on Windows3、
mod_python document