在Azure上配置ASP.NET Core 1.0 web Kestrel应用程序
本文关键字:web Kestrel 应用程序 Core NET Azure 配置 ASP | 更新日期: 2023-09-27 17:59:39
我正试图通过git在Azure上部署aspnetcore应用程序。我直接做了所有事情,如https://docs.asp.net/en/latest/tutorials/your-first-mac-aspnet.html
稍后,我甚至遵循"将ASP.NET 5(ASP.NET Core)应用程序部署到Azure的问题"中定义的步骤,并从https://github.com/bigfont/WebNotWar在这两种情况下,我得到的都只是一条信息
您没有查看此目录或页面的权限。。
当我试图访问任何控制器时,响应是
您要查找的资源已被删除,其名称为已更改或暂时不可用。
我非常确信部署本身是好的,因为我试图破坏一个代码,它的反应是正确的。
Azure应用程序服务不再支持RTM之前的ASP.NET核心
Azure应用程序服务不再支持ASP.NET 5、Core RC1或RC2唯一支持的ASP.NET核心堆栈是Azure应用程序服务上的RTM(增加强调)。
现有的RC1应用程序目前仍在运行如果我们在Azure放弃支持之前将ASP.NET Core RC1应用程序部署到Azure应用程序服务,那么该应用程序将继续工作,其连续部署也将继续工作。
ASP.NET核心IIS集成已更改
对web.config的更改
ASP.NET核心模块已替换HttpPlatformHandler。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
// Use the ASP.NET Core Module
<handlers>
<add name="aspNetCore" path="*" verb="*"
modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="..'MySite.exe" arguments=""
stdoutLogEnabled="false" stdoutLogFile="..'logs'stdout" />
// Remove the HTTP Platform Handler
// <handlers>
// <add name="httpPlatformHandler" path="*" verb="*"
// modules="httpPlatformHandler" resourceType="Unspecified"/>
// </handlers>
// <httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%"
// stdoutLogEnabled="false" startupTimeLimit="3600" />
</system.webServer>
</configuration>
Startup
的更改
public void Configure(IApplicationBuilder app)
{
// Remove call to app.UseIISPlatformHandler();
// Remove call to app.UseForwardedHeaders();
// Both are handled by UseIISIntegration in Main.
}
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseIISIntegration() // Replace UseIISPlatformHandlerUrl()
.UseStartup<Startup>()
.Build();
host.Run();
}