Differences between revisions 14 and 16 (spanning 2 versions)
Revision 14 as of 2007-04-07 15:57:04
Size: 3217
Editor: wangzhen
Comment:
Revision 16 as of 2007-04-17 09:28:41
Size: 3223
Editor: wangzhen
Comment:
Deletions are marked like this. Additions are marked like this.
Line 13: Line 13:
 1. attachment:d4i.py_2006-01-08 Django的Handler  1. attachment:d4i.py_2007-04-17 Django的Handler
Line 27: Line 27:
 1. 今天升级到了python2.5和activepython2.5,发现了一个新的问题。activepython2.5的PyISAPI_loader.dll出现了一个新的问题,_d4iisapi.dll不能找到同一目录下的d4iisapi.py,必须将d4iisapi.py放到python的lib目录下,否则会出错。  1. '''今天升级到了python2.5和activepython2.5,发现了一个新的问题。activepython2.5的PyISAPI_loader.dll出现了一个新的问题,_d4iisapi.dll不能找到同一目录下的d4iisapi.py,必须将d4iisapi.py放到python的lib目录下,否则会出错。'''

D4I (Django For IIS,暂定名)

文件已更新,适用于最新版的Django. 下载后,d4i.py_2006-01-08 改名为d4i.py . 另一个文件也要这样改名.

功能描述

  1. 帮助开发者在IIS上使用Django

已知缺陷

  1. 目前静态文件还不能直接交给IIS处理,还是通过Django来处理的. 这个问题正在改进中
    • 静态文件不是在 iis 下另外建个虚拟目录不就搞定了? -- HuangYi

      • 如果把django设到IIS的一个站点(非虚拟目录),那么,访问这个站点下的所有路径,都人交到django去处理了。IIS好像不能像Apache那样可以指定某个路径是静态的。--[:torry:头太晕]
  2. 问题已解决,原来是自己对IIS不熟悉,只要新建一个media虚拟目录,然后将虚拟目录中的Application Extension Mapping那一项remove了就可以了。

文件列表

  1. attachment:d4i.py_2007-04-17 Django的Handler
  2. attachment:d4iisapi.py_2006-01-08 ISAPI代码
  3. attachment:readme.txt 本文内容

运行环境

  1. Python2.4 http://www.python.org

  2. activepython2.4 或 pywin32 http://www.activestate.com/python.plex

配置方法

  1. 将d4i.py 复制到 C:\Python24\Lib\site-packages\Django-0.95-py2.4.egg\django\core\handlers目录下
  2. 将d4iisapi.py复制到一个目录下(任何的).
  3. 直接双击d4iisapi.py 会在相同目录下生成一个_d4iisapi.dll , 同时会在iis的默认站点建立一个虚拟目录.不用的话,可以删掉这个虚拟目录 . 也可以直接将C:\Python24\Lib\site-packages\isapi目录下的PyISAPI_loader.dll复制到相同目录下, 并改名为_d4iisapi.dll
  4. 新建站点或虚拟目录.在站点或虚拟目录的属性窗口中," Home Directory" 标签页, 点击"Configuration"按钮打开"Application Configuration"对话框. 在"Wildcard application maps"中,点" Insert"按钮,打开"Add/Edit Application Extension Mapping"对话框. 点"Browse"按扭选择刚才的_d4iisapi.dll . 去掉"Verify that file exists"选框, 然后OK
  5. 我用的是英文版,真累人.... :P
  6. 忘了说了.站点或虚拟目录的"Home Directory"标签页中的"Local Path"项要设为你的Django站点的目当.也就是包含你的settings.py和urls.ppy两个文件的那个目录.
  7. 别忘了把那两个目录的权限设置一下.(我调试的时候,就是因为权限的问题,多花费了一天时间啊.)
  8. 今天升级到了python2.5和activepython2.5,发现了一个新的问题。activepython2.5的PyISAPI_loader.dll出现了一个新的问题,_d4iisapi.dll不能找到同一目录下的d4iisapi.py,必须将d4iisapi.py放到python的lib目录下,否则会出错。

感谢

  1. 感谢limodou, Dreamingk(天成), 刘鑫, 等等几位老大的指导. (人数太多,不一一列举...)

[:torry:头太晕] [email protected]

D4I (last edited 2009-12-25 07:15:45 by localhost)