我是这个.NET Core的新手,这是我第一次尝试部署其中一个。
该项目是Angular前端构建的API,它接收HTTP请求并返回JSON。当我在我的盒子上的Visual Studio中运行它时,一切都很好。我正在运行VS2017并安装了.NET Core 2.0.0。
我发布到Web服务器上的一个文件夹,它似乎工作正常,但当我尝试访问API时,我得到404未找到错误。服务器正在运行.NET 2.0.6(我试图获得2.0.0,但无法在Hosting Bundle安装程序中找到它。
如果我删除web.config,HTML文件就会显示出来,但显然API不起作用。但是,当HTML文件显示时,权限和访问权限没有问题。事件查看器中没有任何内容。我也尝试打开web.config中的日志记录,但它没有记录...可能没有达到足够的目标。
Web配置看起来像这样。
<?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=".\RawMaterialsSystem.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
<!--ProjectGuid: f01b1621-2ced-4ad2-9ae6-004e03b0e043-->`
答案 0 :(得分:2)
步骤1:将您的web.config文件更改为此
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!--
Configure your application settings in appsettings.json. Learn more at http://go.microsoft.com/fwlink/?LinkId=786380
-->
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
步骤2:
步骤3: