App (web api) works fine locally. but in azure (App Service) request like http://myapp.azurewebsites.net/api/values returns error 404 (The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.) Routing is looking for physical path D:\home\site\wwwroot\api\values which doesn't exist.
in program.cs:
var host = new WebHostBuilder()
.UseKestrel()
.UseUrls("http://myapp.azurewebsites.net")
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
in startup.cs:
public void ConfigureServices(IServiceCollection services)
{
...
services.AddMvcCore(opts =>
{
opts.ModelBinderProviders.Insert(0, new CommaDelimitedArrayModelBinderProvider());
});
...
}
web.config:
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
</handlers>
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="flase" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>
</system.webServer>
</configuration>
update 2:
sub-error code is 0 (sc-substatus). sc-win32-status is 2 (file not found).
I also enabled all logs, viewed them and didn't found any additional tips.
Kudu Remote Execution Console didn't show any error and evidence of request at all.

update 3: short version of api https://drive.google.com/open?id=1TUCImJSmuCC1HJK-x95wg5VOUUEB96wZ



404 error has a many of sub-status code, to narrow down kindly find the sub-status code, you may review the Failed Request Tracing logs.
Make sure that the deployment files are available in wwwroot folder. Place the web.config file under the /site/wwwroot directory.
By default, on Azure WebApps, all files are stored in the file system with the application, including the media files. Refer to the article File structure on azure - https://github.com/projectkudu/kudu/wiki/File-structure-on-azure to know the sets of files & dirs on Azure WebApp.
To enable diagnostics in the Azure portal, go to the page for your web app and click Settings > Diagnostics logs.
Further, many startup errors don't produce useful information in the Application Event Log. You can run the app in the Kudu Remote Execution Console to discover the error: Checkout the steps mentioned in this document: https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/azure-apps/troubleshoot?view=aspnetcore-2.0#run-the-app-in-the-kudu-console
Reference: https://learn.microsoft.com/en-us/azure/app-service/web-sites-enable-diagnostic-log