我正在将一些应用程序从 ASP.NET 5 beta7 迁移到 RC1。使用 HTTPPlatformHandler,我可以将这些 ASP.NET 5 RC1 应用程序中的任何一个作为 IIS 站点的根目录运行。但它们不会作为站点的子目录(右键单击“添加应用程序”)运行。完整的回复显示:
HTTP/1.1 404 Not Found
Content-Length: 0
Server: Kestrel
X-Powered-By: ASP.NET
Date: Tue, 24 Nov 2015 14:59:04 GMT
这不是权限问题,因为当应用程序是站点的根目录并使用相同的应用程序池时,路由会成功提供。
应用程序池配置为“无托管代码”和集成管道。
根应用程序的 web.config 如下所示:
<configuration>
<system.webServer>
<handlers>
<add name="httpplatformhandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
</handlers>
<httpPlatform processPath="..\approot\web.cmd" arguments="" stdoutLogEnabled="false" stdoutLogFile="..\logs\stdout.log" startupTimeLimit="3600"></httpPlatform>
</system.webServer>
</configuration>
对于子应用程序,我必须删除 httpplatformhandler 处理程序以避免错误“无法添加类型为 'add' 且唯一键属性 'name' 设置为 'httpplatformhandler' 的重复集合条目”。
现在我们必须使用 kestrel/httpplatformhandler,是否可以在站点下作为应用程序运行?