在IIS上发布ASP.NET MVC应用程序

在IIS上发布ASP.NET MVC应用程序,asp.net,asp.net-mvc,windows-server-2012,iis-10,Asp.net,Asp.net Mvc,Windows Server 2012,Iis 10,我在通过远程桌面在IIS上部署简单应用程序时遇到问题。该应用程序是一个简单的“Hello World”网站,使用ASP.Net(而不是.core)和MVC模式,由Visual Studio 2017开发 我使用“文件系统”方式发布我的应用程序,并使用IIS 10将其上载到服务器(Windows server 2016) 这是我用于在IIS上发布应用程序的参数: 我有一个HTTP错误403.14,但遵循此主题()并在我的web.config中添加以下代码 <system.webServer

我在通过远程桌面在IIS上部署简单应用程序时遇到问题。该应用程序是一个简单的“Hello World”网站,使用ASP.Net(而不是.core)和MVC模式,由Visual Studio 2017开发

我使用“文件系统”方式发布我的应用程序,并使用IIS 10将其上载到服务器(Windows server 2016)

这是我用于在IIS上发布应用程序的参数:

我有一个HTTP错误403.14,但遵循此主题()并在我的web.config中添加以下代码

<system.webServer>
    <directoryBrowse enabled="true" />
</system.webServer>

我可以看到一个改进:我可以看到目录,但应用程序无法启动。

如果我在web.config中使用以下代码,我会得到一个错误403.14-禁止

<system.webServer>
    <defaultDocument>
       <files>
          <add value="insertion.aspx" />
       </files>
    </defaultDocument>
    <directoryBrowse enabled="false" />
</system.webServer>

我做错了什么?我想不起来了。
谢谢

您需要将网站转换为应用程序


更简单的方法是直接从Visual Studio部署,它将为您配置它

请将您的应用程序发布到某个文件夹c:\pubfolder。在IIS中添加网站,并将此文件夹c:\pubfolder分配给物理路径


注意:如果端口80已被使用,您可能需要提供主机名(有时默认网站已使用端口80)。请记住,您可能需要在主机文件中为上述主机名提供一个条目,主机文件的位置是C:\Windows\System32\drivers\等。并且不需要启用目录浏览

由于您使用Visual Studio写入/发布到本地文件系统,请确保以管理员身份运行Visual Studio。即使文件夹已转换为应用程序,它仍会打印目录,而不是启动应用程序。我希望直接从VS部署,但当我尝试连接到远程服务器时,我收到一个错误“error\u DESTINATION\u NOT\u REACHABLE”。我已禁用“Default Web Site”,这样本地主机上只有我的应用。然后,您可能需要在hosts文件中为上述主机名提供一个条目,主机文件的位置是C:\Windows\System32\drivers\etc,如下所示。。。127.0.0.1新主机名好的,我在您告诉我的主机文件末尾添加了一行“127.0.0.1 HelloWorldRelease”。现在它工作了(我在浏览器上看到Hello World)。非常感谢你。