system.webServer/fastCgi/application not working in web.config
Asked Answered
W

0

7

How do I register an IIS FastCGI application in a MSDeploy's web.config file as documented?

I'm trying to build a simple test MS Web Deploy package installable by the Web Platform Installer via a custom feed. I'm trying to register a FastCGI application in the packages web.config as the docs indicate is possible. You can see the web.config file below or in github:

<?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>
...

This doesn't work when installed via the Web Platform Installer and then tested through Web Matrix/IIS Express. However, as soon as I run the appcmd.exe command as below and in the install.cmd batch file:

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

...the FastCGI app works just fine. IOW, it seems like the <fastCGI><application> elements in web.config don't take effect, but they do in IIS's applicationhost.config even though the docs indicate this is possible in web.confg.

Is there a way to get this to work in the specific app (through web.config or otherwise) without changing the global IIS config?

I'm doing all this under Windows 7 Professional, Web Platform Installer 4.0, and Web Matrix 2.0 RC whose about dialog says:

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

The code behind all this is in IISWSGI on GitHub, use this commit to test. To reproduce the environment I'm using, see the IISWSGI documentation.

Waggle answered 21/9, 2012 at 6:47 Comment(2)
Have you looked at deploying it via the fcgiExtConfig MSDeploy provider?Incautious
@RichardSzalay Using that fails with EXCEPTION: Microsoft.Web.Deployment.DeploymentException: Source (fcgiExtConfig=ini) and destination (fcgiExtConfig=C:\Windows\system32\inetsrv\fcgiext.ini) are not compatible for the given operation. ---> System.IO.InvalidDataException: Found invalid data while decoding. After reading the docs I'm not sure how it would work for WebPI/IIS Express anyways.Waggle

© 2022 - 2024 — McMap. All rights reserved.