[python-chinese] IIS运行django,心得总结(采用pyisapie),希望对大家有帮助。
magic lu lujianxy在gmail.com
星期五 五月 4 01:05:12 HKT 2007
星期五 五月 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才可以