[python-chinese] IIS运行django,心得总结(采用pyisapie),希望对大家有帮助。

magic lu lujianxy在gmail.com
星期五 五月 4 01:05:12 HKT 2007
http://maowuu.com  演示站点

需要使用到的组件

pyisapie,python2.5,vs2005,pywin32,django 0.96

大家自己去下载准备的说

首先依次安装python2.5和pywin32相应版本,这里没有什么说的。照着提示next就ok了。

然后解压缩pyisapie,进入source使用vs2005(我用的是这个,2003或者6应该也可以)

加载python.lib和python.h重新编译pyisapie。默认下载的pyisapie是使用python2.4编译的。

然后按照http://code.djangoproject.com/wiki/DjangoOnWindowsWithIISAndSQLServer中的说明去做。

拷贝pyisapie.dll的时候,使用自己编译的那个。

完毕了?别急,还需要修改文件pyisapie.py

第一个是

将response = This.get_response(Env.URL,request)

修改成如下

response = This.get_response(request)

response.path = Env.URL 这个可以考虑不要了,在dj中response对象,并没有path属性。也没有相关需求。

然后将

#for chunk in http_response.iterator:

# Write(chunk)

Write(http_response.content)

ok了,全部搞定,大家可以使用了。hoho。。。希望对大家有所帮助。

所有小提醒中的服务器中,都是指我们上边架设的iis+pyisapie的这个环境;其它环境是否存在此问题,我并没有验证。

小的提醒(1):django的urls.py中的规则都是从访问根目录开始的,也就是http://localhost/

开始;如果你使用虚拟目录的话(例如:虚拟目录为python),你的规则中需要带上此虚拟目录。你的urls.py中的设定都应该是r'python/*'这样开始的。

小的提醒(2):在django的devolopment

server中,模块加载路径会自动逐目录查找的,但是在iis中使用的时候则不会。例如:在使用django-tagging的时候,

其fields.py模块中的from tagging.validators import

isTagList,在自带的开发server中使用是没有任何问题的,但是到了服务器上tagging.validators就会无法找到,必

须是projectname.tagging.validators才可以

你可能感兴趣的:(chinese)