Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 无法将Razor网站部署到IIS,HTTP错误500.19-内部服务器错误_Asp.net Core_Iis_Razor Pages - Fatal编程技术网

Asp.net core 无法将Razor网站部署到IIS,HTTP错误500.19-内部服务器错误

Asp.net core 无法将Razor网站部署到IIS,HTTP错误500.19-内部服务器错误,asp.net-core,iis,razor-pages,Asp.net Core,Iis,Razor Pages,我是IIS和razor页面的初学者。目前,我正在尝试部署一个内部网站,该网站是使用使用razor页面编写的NetCore构建的,但它不断给出一个服务器HTTP错误500.19-内部服务器错误 这是一个内部网站,所以不向世界开放。我查看了这个线程,安装了他们提到的组件,但没有帮助 作为测试,这只是使用向导创建的webapplication1模板代码。我在launchsettings.jon上有这个。注意,我添加了URL映射的。不确定这是否必要 Properties\launchSettings.

我是IIS和razor页面的初学者。目前,我正在尝试部署一个内部网站,该网站是使用使用razor页面编写的NetCore构建的,但它不断给出一个服务器HTTP错误500.19-内部服务器错误

这是一个内部网站,所以不向世界开放。我查看了这个线程,安装了他们提到的组件,但没有帮助

作为测试,这只是使用向导创建的webapplication1模板代码。我在launchsettings.jon上有这个。注意,我添加了URL映射的。不确定这是否必要

Properties\launchSettings.json

"profiles": {
    "IIS Express": {
        "commandName": "IISExpress",
        "launchBrowser": true,
        "environmentVariables": {
            "ASPNETCORE_ENVIRONMENT": "Development"
        }
    },
    "WebApplication1": {
        "commandName": "Project",
        "launchBrowser": true,
        "applicationUrl": "https://localhost:5001;http://localhost:5000;https://myinternalsite.net/",
        "environmentVariables": {
            "ASPNETCORE_ENVIRONMENT": "Development"
        }
    }
}
我厌倦了使用“文件夹”进行部署,当前url映射到服务器@:

C:\inetpub\wwwroot\

但是,我使用“Publish to”文件夹直接在服务器内部发布站点,如下所示:

以下是已安装的IIS软件包:

但有一件事让我感到困扰,那就是当我部署到本地文件夹时,我会看到:

C:\inetpub\wwwroot\wwwroot

两个嵌套的wwwroot文件夹!不确定这是否是问题所在

但我在尝试部署时得到的是:

但是,如果我尝试部署到C:\inetpub,会出现如下不同的错误:


我发现了这个问题,但不确定为什么会发生。为了让它工作,我从我的本地机器上做了如上所述的“发布到文件夹”。我的机器安装了所有.net core 3.1。然后我将整个本地二进制文件夹复制到远程服务器。然后我把IIS改成指向这个文件夹,它就工作了

不管出于什么原因,我不明白,在服务器内部构建web项目是不可行的,但是如果我在本地进行构建并复制所有的二进制文件,它就会起作用

服务器上安装的VS2019肯定缺少什么,我不知道是什么


感谢所有情况下的提示。

404错误页面与此无关,因为需要双wwwroot。请显示您的500.19错误页面,这是关键。(在阅读其他500.19文章时,请检查模块和错误代码,以确保您阅读了类似的内容。如果模块和错误代码不同,则该文章可能与您的案例无关。)我建议您在希望在IIS上承载asp.net core应用程序之前,可以先确保安装了asp.net core运行时。Asp.net核心模块下载。缺少组件不是问题,我已经在服务器上安装了VS2019,它肯定有.net核心31。Lex Li我添加了错误页,如果你不介意看一下的话。谢谢!据我所知,显示的错误将指向模块丢失…(这是必需的)。请确保在IIS中安装了ASP.NET核心模块(托管捆绑包)。你可以从这里下载。