我部署了一个新的应用程序,其中包含一个与Web Core API通信的Web项目。 我使用此链接作为参考来设置它; https://docs.microsoft.com/en-us/aspnet/core/publishing/iis IIS已在此测试服务器上设置了一段时间,因此某些步骤不需要重复。 在IIS中,如果我浏览Web API,则启动如下。 但是,如果我对使用它的Web项目也这样做,我会收到此错误:
Response status code does not indicate success: 404 (Not Found) for a simple get call to the Web API.
我应该考虑解决这个问题?
答案 0 :(得分:1)
我看到的多种可能性
根据您的routing,默认路线会是这样的。您可以浏览
http://testweb.sherrygreengrp.com/api/<controller>
在主机上安装.NET Core Windows Server Hosting软件包 系统。该软件包将安装.NET Core Runtime,.NET Core 库和ASP.NET核心模块。该模块创建 IIS和Kestrel服务器之间的反向代理。注意:如果是系统 没有Internet连接,获取并安装Microsoft Visual C ++ 2015 Redistributable在安装.NET Core之前 Windows Server Hosting包
ASP.NET CORE Module已正确配置。您是否在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="%LAUNCHER_PATH%"
arguments="%LAUNCHER_ARGS%"
stdoutLogEnabled="false"
stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
答案 1 :(得分:1)
我发现部署服务器上所需的URI需要具有我的应用程序的名称,而在开发过程中则不需要。一旦我进行了修正,它就可以了。