Python论坛  - 讨论区

标题:[python-chinese] 在IIS下用FastCGI跑Django的设置方法

2007年12月04日 星期二 18:04

vcc vcc在163.com
星期二 十二月 4 18:04:19 HKT 2007

现在IIS官方提供fastcgi的支持,这样运行python就可以非常快了。下面是在win2003下设置的步骤:

1、下载和安装FastCGI, http://www.iis.net/default.aspx?tabid=1000051。
2、安装flup http://trac.saddi.com/flup, python-fastcgi和相关包,我编译好的:http://hivcc.com/python/fastcgi/libfcgi.dll,http://hivcc.com/python/fastcgi/python-fastcgi-1.1.win32-py2.5.exe,也可以自己从www.fastcgi.com和http://cheeseshop.python.org/pypi/python-fastcgi下载相关的源代码自己编译。
3、把libfcgi.dll拷贝到\Python25\DLLs目录,同时把\Python25\python.exe也拷贝到\Python\DLLs目录,不然在IIS下启动python.exe会有问题。
4、添加Python的FastCGI支持:打开命令行窗口到%WINDIR%\system32\inetsrv,运行:
 cscript fcgiconfig.js -add -section:"PYTHON" -extension:py -path:"C:\Python25\DLLs\python.exe"
5、加一个django的启动文件\inetpub\django_fastcgi.py, 内容:
#!c:/python25/python.exe
import sys, os
sys.path.insert(0, "c:/XXX") # 你的 django project 目录
os.environ['DJANGO_SETTINGS_MODULE'] = "mysite.settings"            

import fastcgi
from flup.server.fcgi import WSGIServer 
from django.core.handlers.wsgi import WSGIHandler
 
def django_app(environ, start_response):
    handler = WSGIHandler() 
    return handler(environ, start_response)
 
s = fastcgi.ThreadedWSGIServer(django_app, workers=5)
s.serve_forever()

5、修改%WINDIR%\system32\inetsrv\fcgiext.ini的[PYTHON]:
[PYTHON]
ExePath=C:\python25\DLLs\python.exe
Arguments="c:/inetpub/django_fastcgi.py"
QueueLength=999
MaxInstances=20
InstanceMaxRequests=500
RequestTimeout=500
ActivityTimeout=900

6、写一个空的index.py到你的网站目录,然后重启IIS测试一下。(如果404错误,可能需要重启服务器)

呵呵,速度飞快了吧;-)

http://hivcc.com/python/fastcgi/en.htm>

vcc
_
http://hivcc.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://python.cn/pipermail/python-chinese/attachments/20071204/a35b4052/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 09:42

头太晕 torrycn在gmail.com
星期三 十二月 5 09:42:08 HKT 2007

ÎÒÒ²×öÁËÒ»¸ö¸úÄãÀàËƵĶ«Î÷.
ÊÇscgiµÄ...
http://code.google.com/p/pyisapi-scgi/

ÔÚ07-12-4£¬vcc <vcc在163.com> дµÀ£º
>
>  ÏÖÔÚIIS¹Ù·½ÌṩfastcgiµÄÖ§³Ö£¬ÕâÑùÔËÐÐpython¾Í¿ÉÒԷdz£¿ìÁË¡£ÏÂÃæÊÇÔÚwin2003ÏÂÉèÖõIJ½Ö裺
> 1¡¢ÏÂÔغͰ²×°FastCGI, http://www.iis.net/default.aspx?tabid=1000051¡£
> 2¡¢°²×°flup http://trac.saddi.com/flup, python-fastcgiºÍÏà¹Ø°ü£¬ÎÒ±àÒëºÃµÄ£º
> http://hivcc.com/python/fastcgi/libfcgi.dll£¬
> http://hivcc.com/python/fastcgi/python-fastcgi-1.1.win32-py2.5.exe£¬Ò²¿ÉÒÔ×Ô¼º´Ó
> www.fastcgi.comºÍhttp://cheeseshop.python.org/pypi/python-fastcgi
> ÏÂÔØÏà¹ØµÄÔ´´úÂë×Ô¼º±àÒë¡£
> 3¡¢°Ñlibfcgi.dll¿½±´µ½\Python25\DLLs
> Ŀ¼£¬Í¬Ê±°Ñ\Python25\python.exeÒ²¿½±´µ½\Python\DLLsĿ¼£¬²»È»ÔÚIISÏÂÆô¶¯python.exe»áÓÐÎÊÌâ¡£
> 4¡¢Ìí¼ÓPythonµÄFastCGIÖ§³Ö£º´ò¿ªÃüÁîÐд°¿Úµ½%WINDIR%\system32\inetsrv£¬ÔËÐУº
>  cscript fcgiconfig.js -add -section:"PYTHON" -extension:py
> -path:"C:\Python25\DLLs\python.exe"
> 5¡¢¼ÓÒ»¸ödjangoµÄÆô¶¯Îļþ\inetpub\django_fastcgi.py, ÄÚÈÝ£º
> #!c:/python25/python.exe
> import sys, os
> sys.path.insert(0, "c:/XXX") # ÄãµÄ django project Ŀ¼
> os.environ['DJANGO_SETTINGS_MODULE'] = "mysite.settings"
>
> import fastcgi
> from flup.server.fcgi import WSGIServer
> from django.core.handlers.wsgi import WSGIHandler
>
> def django_app(environ, start_response):
>     handler = WSGIHandler()
>     return handler(environ, start_response)
>
> s = fastcgi.ThreadedWSGIServer(django_app, workers=5)
> s.serve_forever()
>
> 5¡¢ÐÞ¸Ä%WINDIR%\system32\inetsrv\fcgiext.iniµÄ[PYTHON]£º
> [PYTHON]
> ExePath=C:\python25\DLLs\python.exe
> Arguments="c:/inetpub/django_fastcgi.py"
> QueueLength=999
> MaxInstances=20
> InstanceMaxRequests=500
> RequestTimeout=500
> ActivityTimeout=900
>
> 6¡¢Ð´Ò»¸ö¿ÕµÄindex.pyµ½ÄãµÄÍøվĿ¼£¬È»ºóÖØÆôIIS²âÊÔһϡ££¨Èç¹û404´íÎ󣬿ÉÄÜÐèÒªÖØÆô·þÎñÆ÷£©
>
> ºÇºÇ£¬ËٶȷɿìÁË°É;-)
>
> http://hivcc.com/python/fastcgi/en.htm>
>
> vcc
> _
> http://hivcc.com
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071205/ef504b33/attachment-0001.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 10:00

陆星光 xglu在iflytek.com
星期三 十二月 5 10:00:25 HKT 2007

ÈçºÎÓÃpathon½ûÖ¹ä¯ÀÀÆ÷»º´æ£¿·þÎñÆ÷ÊÇapache+mod_python

-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071205/0db9ec02/attachment.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 10:09

jessinio liang jessinio在gmail.com
星期三 十二月 5 10:09:32 HKT 2007

文档里提到一条标志的,不过上次我使用了没有反应



关注一下




On Dec 5, 2007 10:00 AM, 陆星光 <xglu在iflytek.com> wrote:
>
>
>
>
> 如何用pathon禁止浏览器缓存?服务器是apache+mod_python
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>



-- 
注意身体,身体是革命的本钱!!

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 10:19

陆星光 xglu在iflytek.com
星期三 十二月 5 10:19:57 HKT 2007

什么标志啊。我试一下

-----邮件原件-----
发件人: python-chinese-bounces在lists.python.cn
[mailto:python-chinese-bounces在lists.python.cn] 代表 jessinio liang
发送时间: 2007年12月5日 10:10
收件人: python-chinese在lists.python.cn
主题: Re: [python-chinese] 禁止浏览器缓存 python

文档里提到一条标志的,不过上次我使用了没有反应



关注一下




On Dec 5, 2007 10:00 AM, 陆星光 <xglu在iflytek.com> wrote:
>
>
>
>
> 如何用pathon禁止浏览器缓存?服务器是apache+mod_python
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>



-- 
注意身体,身体是革命的本钱!!
_______________________________________________
python-chinese
Post: send python-chinese在lists.python.cn
Subscribe: send subscribe to python-chinese-request在lists.python.cn
Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
Detail Info: http://python.cn/mailman/listinfo/python-chinese


[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 11:19

Yingbo Qiu qiuyingbo在gmail.com
星期三 十二月 5 11:19:38 HKT 2007

http://support.microsoft.com/kb/234067

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 13:46

jessinio liang jessinio在gmail.com
星期三 十二月 5 13:46:31 HKT 2007

你是不是想使用apache作为开发服务器?(不用重启apache可以使用最新的py文件)

On Dec 5, 2007 10:19 AM, 陆星光 <xglu在iflytek.com> wrote:
> 什么标志啊。我试一下
>
> -----邮件原件-----
> 发件人: python-chinese-bounces在lists.python.cn
> [mailto:python-chinese-bounces在lists.python.cn] 代表 jessinio liang
> 发送时间: 2007年12月5日 10:10
> 收件人: python-chinese在lists.python.cn
> 主题: Re: [python-chinese] 禁止浏览器缓存 python
>
>
> 文档里提到一条标志的,不过上次我使用了没有反应
>
>
>
> 关注一下
>
>
>
>
> On Dec 5, 2007 10:00 AM, 陆星光 <xglu在iflytek.com> wrote:
> >
> >
> >
> >
> > 如何用pathon禁止浏览器缓存?服务器是apache+mod_python
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese在lists.python.cn
> > Subscribe: send subscribe to python-chinese-request在lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
> >
>
>
>
> --
> 注意身体,身体是革命的本钱!!
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese



-- 
注意身体,身体是革命的本钱!!

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 14:26

陆星光 xglu在iflytek.com
星期三 十二月 5 14:26:49 HKT 2007

不是啊,我是要客户端浏览器不储存缓存,每次都是从服务器取得最新的结果

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 14:35

Alec huanghao.c在gmail.com
星期三 十二月 5 14:35:18 HKT 2007

在 http response header 加上
Cache-Control: no-cache,

mod_python 有相应的设置 http 头的函数。

陆星光 写道:
>
> 如何用pathon禁止浏览器缓存?服务器是apache+mod_python
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> python-chinese
> Post: send python-chinese at lists.python.cn
> Subscribe: send subscribe to python-chinese-request at lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request at lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese


[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 14:40

陆星光 xglu在iflytek.com
星期三 十二月 5 14:40:17 HKT 2007

我现在就是想知道函数是什么啊? 谁有mod_python的函数方面的资料?mod_python的
那个文档的内容实在是太少了

-----邮件原件-----
发件人: python-chinese-bounces在lists.python.cn
[mailto:python-chinese-bounces在lists.python.cn] 代表 Alec
发送时间: 2007年12月5日 14:35
收件人: python-chinese在lists.python.cn
主题: Re: [python-chinese] 禁止浏览器缓存 python

在 http response header 加上
Cache-Control: no-cache,

mod_python 有相应的设置 http 头的函数。

陆星光 写道:
>
> 如何用pathon禁止浏览器缓存?服务器是apache+mod_python
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese

_______________________________________________
python-chinese
Post: send python-chinese在lists.python.cn
Subscribe: send subscribe to python-chinese-request在lists.python.cn
Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
Detail Info: http://python.cn/mailman/listinfo/python-chinese


[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 15:28

jessinio liang jessinio在gmail.com
星期三 十二月 5 15:28:55 HKT 2007

http://www.dscpl.com.au/wiki/ModPython/

不知道合不合你味

On Dec 5, 2007 2:40 PM, 陆星光 <xglu在iflytek.com> wrote:
> 我现在就是想知道函数是什么啊? 谁有mod_python的函数方面的资料?mod_python的
> 那个文档的内容实在是太少了
>
> -----邮件原件-----
> 发件人: python-chinese-bounces在lists.python.cn
> [mailto:python-chinese-bounces在lists.python.cn] 代表 Alec
> 发送时间: 2007年12月5日 14:35
> 收件人: python-chinese在lists.python.cn
> 主题: Re: [python-chinese] 禁止浏览器缓存 python
>
>
> 在 http response header 加上
> Cache-Control: no-cache,
>
> mod_python 有相应的设置 http 头的函数。
>
> 陆星光 写道:
> >
> > 如何用pathon禁止浏览器缓存?服务器是apache+mod_python
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese在lists.python.cn
> > Subscribe: send subscribe to python-chinese-request在lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese



-- 
注意身体,身体是革命的本钱!!

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月05日 星期三 21:12

vcc vcc在163.com
星期三 十二月 5 21:12:48 HKT 2007

做得不错,挺有意思的,不过要如果要完善起来差不多就等于做了一个FastCGI出来了。
现在IIS对FastCGI的支持已经相当成熟,win2008里IIS7默认带有FastCGI支持,显然微软会把FastCGI作为ASP以外支持其他语言的强力工具,确实效果也是相当不错,性能提升非常明显,个人觉得应该是方向,虽然CGI听起来没有ISAPI酷。
个人建议你的pyisapi-scg能不能改一下,最好还是支持文件名扩展方式,整个网站映射的方式不太灵活,不方便和其他的资源的整合。毕竟要实现根目录的方式访问只需要简单的设url rewrite就可以实现了。

vcc
_
  ----- Original Message ----- 
  From: 头太晕 
  To: python-chinese at lists.python.cn 
  Sent: Wednesday, December 05, 2007 9:42 AM
  Subject: Re: [python-chinese]在IIS下用FastCGI跑Django的设置方法


  我也做了一个跟你类似的东西.
  是scgi的...
  http://code.google.com/p/pyisapi-scgi/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://python.cn/pipermail/python-chinese/attachments/20071205/d4938bf5/attachment.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年12月06日 星期四 13:22

阿杰 gujiajie在gmail.com
星期四 十二月 6 13:22:48 HKT 2007

¹Ø×¢

ÔÚ07-12-5£¬Â½Ðǹâ <xglu在iflytek.com> дµÀ£º
>
>  ÈçºÎÓÃpathon½ûÖ¹ä¯ÀÀÆ÷»º´æ£¿·þÎñÆ÷ÊÇapache+mod_python
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071206/4e7303d8/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号