IIS6下配置CGI方式使用PYTHON
2009年10月22日如果您习惯于使用WIN2003服务器,同时又用开IIS6,不想多安装一个Apache,那么可以考虑配置IIS6以CGI方式来使用PYTHON。
这是最基本的使用方法,CGI几乎可以使用任何exe执行文件。但CGI也是消耗最多速度最慢的方法。
首先配置WEB服务扩展:
1、在“Web服务扩展”点右键,选择“添加一个新的Web服务扩展”.
2、在打开的对话框中填入扩展名,例如:python,然后点击“要求的文件”的添加按钮,找到你python的安装目录,选中python.exe,然后按下面格式填写:
D:\Python26\python.exe -u %s %s (假设python装在了D:\Python26\),注意不要遗漏后面的 -u %s %s, 并注意空格。
3、选中“设置扩展状态为允许”,“确定”完成。
然后再配置WEB站点:
1、在站点配置的“主目录”—>“配置”–>“应用程序扩展”下,点击“添加”。
2、“可执行文件”填写:"D:\Python26\python.exe" -u %s %s
3、“扩展名”填写:.py
4、确定完成。
然后编写一个简单的python文件test.py放在web目录下就可以测试是否工作了。
import cgi #倒入cgi模块 print 'Content-Type: text/html' #必须,输出HTML文档头 print #必须,文档头必须以空行结束 cgiParameters = cgi.FieldStorage() #取得Post或Get过来的参数集 # 检查看是否是我们需要的参数 if not (cgiParameters.has_key("name") and cgiParameters.has_key("address")): #如果不是输出form,要求填写name和address print "<form action="" method="post" name="form"><input name='name' id='name'><input name='address' id='address'><input type='submit' value='submit'></form>" print "Please fill in the name and address fields." else: #如果是我们要求的参数,输出参数内容 print "<p>name:", cgiParameters["name"].value print "<p>address:", cgiParameters["address"].value |