【发布时间】:2016-03-25 11:55:21
【问题描述】:
我正在尝试在安装了 IIS 8.5 的 Windows Server 2012 R2 中部署 ASP.NET 5 WebApp。
我这里的源代码是一个新的 ASP.NET Web 应用程序。如果我在 Visual Studio 2015 中构建并运行它,则可以正常工作。
现在...我想使用发布向导在 ISS 8.5 中部署它,所以我要做的是...
- 右键项目名称(WebApplication5)
- 我创建了一个自定义配置文件(我命名为 localhost)
- 我添加了目标位置。 C:\inetpub\wwwroot
- 我配置设置
- 配置:发布
- 目标 DNX 版本:dnx-clr-win-x64.1.0.0.rc1-update1
- 然后我发布网络应用程序。
之后,我的 C:\inetpub\wwwroot 中有以下文件夹结构
C:\inetpub\wwwroot
- approot
- packages
- runtime
- src
- ... bunch of files
- logs
- wwwroot
- css
- images
- js
- lib
- some files including web.config
现在我编辑了 C:\inetput\wwwroot 的权限以包括 IIS_IUSRS 和 IUSR(我现在授予他们完全访问权限以放弃权限问题)
最后,我去 ISS manager 到 Default Web Site -> Right Click -> Manage Website -> Advanced Settings -> 在物理路径下我添加了 C:\inetpub\wwwroot\wwwroot
我重新启动了 IIS 服务器,当我尝试浏览默认站点时,我收到以下消息...
HTTP 错误 500.19 - 内部服务器错误
无法访问请求的页面,因为相关 该页面的配置数据无效。 详细错误信息:
模块 IIS Web 核心
通知未知
处理程序尚未确定
错误代码0x8007000d
配置错误
配置文件\?\C:\inetpub\wwwroot\wwwroot\web.config
最后...这是 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>
我错过了什么?这在以前的 ASP.NET 版本上非常容易,但我现在无法正确配置。
有什么建议吗? 谢谢!
【问题讨论】:
-
您在这台机器上安装了 ASP.NET 4.6/5 吗? get.asp.net这个还没有默认安装。
-
您是否也安装了HttpPlatformHandler?它是 ASP.NET 5 所必需的。
-
EDIT...我还没有安装HttpPlatformHandler,我现在就安装。关于 ASP.NET 4.6/5。我怎样才能检查出来?我相信我已经安装了最新的,因为我使用的是最新的 VS2015
-
不,但我为您提供了两个链接。 get.asp.net 和 iis.net/downloads/microsoft/httpplatformhandler
-
需要安装在服务器上。不仅仅是在开发应用程序的操作系统上。这两个和...中的一样吗?您是在本地部署到 IIS 吗?
标签: asp.net asp.net-mvc iis asp.net-core iis-8.5