【发布时间】:2018-04-02 14:24:04
【问题描述】:
我已经阅读了很多与我相同的错误的帖子。我遇到的问题是它在我开发解决方案的同一台机器上运行。
我有 Windows 8.1 和 IIS 7.5。 Express 我在我的 IIS 上运行了几个 MVC Framework XXX 解决方案,我没有问题。当我发布解决方案 Core 2.0 时出现问题...
我创建了一个基本的 Web Core 2.0 MVC 解决方案。与默认创建的项目相同。 (创建了一个 Core 2.0 MVC 并发布它)。
我有 Visual Studio 2017,所以我安装了 SDK。
我在 IIS (inetpub/wwwroot) 中为其创建了一个站点,放入已发布的代码,并将应用程序池配置为运行“无托管代码”。我将端口设置为 5010。
当我从 cmd:dotnet core20.dll 运行项目时,它说它正在端口 5000 上运行,而不是在端口 5010 上运行。
所以,我设置了端口 5000,但是当我从 cmd 运行它时,它显示错误。
Microsft.AspNetCore.Server.Kestrel[0] Unable to bind to localhost:5000 on the IPv4 loopback interface: Error 4092 EACCES permission denied. Unabled to start Kestrel.
如果我设置在 5010 端口,为什么它在 5000 端口上运行?
当我从浏览器运行它时,我遇到了这个错误
我的 web.Config 是在发布过程中创建的基本 web.config..
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\core20.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
<!--ProjectGuid: 21dc60b6-a958-447d-8ed3-25a6195a06ea-->
On Windows Features turn on or off--> IIS Services--> Application Development Features,所有选项都被选中
我遇到的错误
我对@987654327@ 应用程序有同样的问题...所以我想安装一些东西。
我还没有安装the .NET Core Windows Server Hosting bundle。不知道有没有必要。
我不知道我是否必须安装Kestrel,或者如何安装它。
我认为在安装 Visual Studio 2017 时必须安装所有这些。
任何想法我错过了什么?
谢谢
【问题讨论】:
标签: iis asp.net-core visual-studio-2017 publish kestrel