我尝试通过 IIS 运行默认的 ASP.NET Core Web 应用程序(VS 2015 中的 Web 应用程序模板)。
我已按照文档的说明进行操作here https://docs.asp.net/en/latest/publishing/iis.html例如,设置“无托管代码”应用程序池并将物理路径指向web.config
file.
当我尝试浏览到网站根目录时,http://localhost
我收到此错误:
HTTP 错误 502.3 - 错误网关 尝试路由请求时出现连接错误。
最可能的原因: CGI 应用程序没有返回一组有效的
HTTP 错误。充当代理或网关的服务器无法
由于父网关中的错误而处理请求。
事件查看器指出:
无法使用命令行“dotnet ./bin/Debug/netcoreapp1.0/WebApplication2.dll”启动进程,错误代码=“0x80004005”。
此错误表明我已替换占位符
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%"
in web.config
与所需的值
<aspNetCore processPath="dotnet" arguments="./bin/Debug/netcoreapp1.0/WebApplication2.dll"
(update:这些占位符在您发布时会被替换)
根据我安装的故障排除说明.NET Core Windows Server Hosting Bundle
并重新启动服务器。
通过命令行运行dotnet
works
想知道现在要尝试什么。
好吧,我解决了我的问题。我将 IIS 中的物理路径指向未发表Visual Studio 项目根目录。这适用于以前版本的 .net(即非 dotnet core aspnet 项目),但现在不行。
如果您确实希望它起作用,那么您必须将应用程序发布到临时文件夹并复制Microsoft.AspNetCore.*
二进制文件返回到bin\Debug\
文件夹以及refs
and runtimes
folders
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)