7

如何按照文档web.config在 MSDeploy 的文件中注册 IIS FastCGI 应用程序?

我正在尝试构建一个简单的测试 MS Web 部署包,可由 Web 平台安装程序通过自定义提要安装。我正在尝试在包中注册一个 FastCGI 应用程序,web.config因为 文档表明是可能的。您可以在下面或 github 中查看 web.config 文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <fastCgi>
      <application fullPath="C:\Python27\python.exe" arguments="-u C:\Python27\Scripts\iiswsgi-script.py" monitorChangesTo="C:\Python27\Scripts\iiswsgi-script.py" maxInstances="1" />
    </fastCgi>
...

当通过 Web 平台安装程序安装然后通过 Web Matrix/IIS Express 进行测试时,这不起作用。但是,只要我在批处理文件appcmd.exe中运行如下命令:install.cmd

set IIS_BIN=%ProgramFiles%\IIS Express
"%IIS_BIN%\appcmd.exe" set config -section:system.webServer/fastCgi /+"[fullPath='%SystemDrive%\Python27\python.exe',arguments='-u %SystemDrive%\Python27\Scripts\iiswsgi-script.py',maxInstances='1',monitorChangesTo='%SystemDrive%\Python27\Scripts\iiswsgi-script.py']" /commit:apphost

... FastCGI 应用程序运行良好。IOW,似乎中的<fastCGI><application>元素web.config没有生效,但它们在 IIS 中生效,applicationhost.config即使文档表明这在web.confg.

有没有办法让它在特定的应用程序中工作(通过web.config或其他方式)而不更改全局 IIS 配置?

我在 Windows 7 Professional、Web Platform Installer 4.0 和 Web Matrix 2.0 RC 下执行所有这些操作,它们的 about 对话框显示:

Version 2.0 RC
WebMatrix: 7.1.1587.0
IIS Express: 8.0.8298.0
.NET Framework: 4.0.30319.17379 built by: FXBETAREL
Web Deploy: 7.1.1516.0
SQL Server Compact: 4.0.8854.1
Web Platform Installer: 7.1.1586.1
ASP.NET Web Pages: 2.0.20505.0
ASP.NET Web Pages: 1.0.20105.407

所有这一切背后的代码都在 GitHub 上的 IISWSGI 中使用此提交进行测试。要重现我正在使用的环境,请参阅IISWSGI 文档

4

0 回答 0