Acfe 发表于 2018-12-10 13:09:25

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

  对于用 Windows2003 Server 服务器,想在 IIS 下尝鲜 Python 的朋友,可以遵照以下步骤配置(以最新的Python3.0为例):
  不像 PHP,可以有 ISAPI 和 CGI 两种配置方法,Python 目前只能配置为以 CGI 方式与 IIS 进行集成。
  1.打开 IIS6 配置界面
    2.在“Web 服务扩展”点右键,选择“添加一个新的Web服务扩展”。在打开的对话框中填入扩展名(可以任意),然后点击要求的文件栏的“添加”按钮,找到你Python的安装目录,选中python.exe,然后按下面格式填写:
    C:\Python30\python.exe -u %s %s(我的Python装在了C:\Python30),不要遗漏后面的 %s %s, 并注意空格。-u是防止return返回的新行有时会出现一些问题。%s代表字符串,第一个是代码python程序名称(如index.py),后面一个则是指可能带的参数。
    新添加的 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 (’Hello Python3.0’)
    print (’’)
    print (’Hello, Python3.0!’)
    print (’This is a Topic’)
    print (’this is a comment’)
    print (’See this is just like most other HTML’)
    print (’’)
    print (’’)
  在浏览器里输入网址,网址根据你的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 的账户和密码。



页: [1]
查看完整版本: 在 IIS6.0 中配置 Python3.0 Web 运行环境