您的位置:首页 > 编程语言 > Python开发

在 IIS6.0 中配置 Python3.0 Web 运行环境

2012-05-13 10:01 387 查看
对于用 Windows2003 Server 服务器,想在 IIS 下尝鲜 Python 的朋友,可以遵照以下步骤配置(以最新的Python3.0为例):

不像 PHP,可以有 ISAPI 和 CGI 两种配置方法,Python 目前只能配置为以 CGI 方式与 IIS 进行集成。

1.打开 IIS6 配置界面

2.在“Web 服务扩展”点右键,选择“添加一个新的Web服务扩展”。在打开的对话框中填入扩展名(可以任意),然后点击要求的文件栏的“添加”按钮,找到你Python的安装目录,选中python.exe,然后按下面格式填写:

C:\Python30\python.exe %s %s(我的Python装在了C:\Python30),不要遗漏后面的 %s %s, 并注意空格。

新添加的 web 扩展默认是“允许”的。

注意:本步也可以用打开“所有未知CGI扩展”的“允许”开关来实现,但因为开放了所有“未知CGI扩展”,所以是很不安全的。

3.点击“确定”完成这个步骤。

4.配置python页面的扩展名映射。

这一步的意思是说当用户请求某个特定扩展名的网页时,IIS用什么去解释这个网页

5.点击“网站”,找到你要执行Python页面的那个网站,点右键,点“属性”。

6.在打开的对话框中选中“主目录”,点击“配置”按钮。

7.在打开的“应用程序配置”对话框,“应用程序扩展”栏目下,点击“添加”按钮。

8.弹出“添加/编辑应用程序扩展名映射”对话框。

9.像上述一样找到你的python.exe文件,然后按照以下格式填到“可执行文件”文本框中:

"C:\Python30\python.exe" %s %s

注意可执行文件路径要加引号。

10.在“扩展名”栏填入想要使用的扩展名,一般是 .py。

11.在“动作”里填入想要允许用户执行的操作,比如GET等,一般可以选“全部动作”。

12.点击“确定”完成本步。

测试:

接下来就试验下吧。编写一个index.py文件:

print ('Status: 200 OK')

print ('Content-Type: text/html')

print ('')

print ('<html><head><title>Hello Python3.0</title></head>')

print ('<body>')

print ('<h1>Hello, Python3.0!</h1>')

print ('<H1>This is a Topic</H1><br>')

print ('<p>this is a comment<br>')

print ('See this is just like most other HTML')

print ('</body>')

print ('</html>')

在浏览器里输入网址,网址根据你的Web环境具体确定,例如 http://localhost/index.py,打开该页面,应该显示:
Hello, Python3.0!

This is a Topic

this is a comment

See this is just like most other HTML

可能存在的问题:

1.找不到网页

这个错误的发生是因为遗漏了配置CGI扩展的步骤。

2.CGI Error

出现错误:The specified CGI application misbehaved by not returning a complete set of HTTP headers.

这个错误的原因,最可能的是,忘记了每个Python网页在开始输出 Html 代码前,都需要用 print('') 输出一个空行。

另一个原因是 Python 脚本存在语法错误,需仔细检查。

注意,Python 3.0 里已经不允许

print 'string...'

这样的语句了,因为 print 现在已经是一个函数,必须写成

print ('string...')

3.python.exe 文件必须给 Internet 用户(用户名形如 IUSR_....)加上读取和执行的权限,不然会在浏览器端弹出个对话框,要求输入 Windows 的账户和密码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: