Asp Core Web App,与Azure Devops一起部署时为404,通过Visual Studio发布时为200

时间:2018-11-04 06:14:50

标签: c# azure asp.net-core azure-devops

我有一个Web应用程序,当我通过Visual Studio发布到Azure应用程序服务时,它运行良好,但是当通过Azure开发操作构建和发布该应用程序时(所有任务均报告成功),我会从主页上看到404 。我只是在发布发行版本。据我所知,没有什么时髦的。

我最初以为这是我的WebHost Builder UseUrls调用。所以我改变了:

.UseUrls(new[] { "http://*:44399" }) => .UseUrls(new[] { "http://localhost:44399","http://*:80" })

但这没用。

我在应用程序服务上启用了诊断日志,但没有显示任何内容。

使用应用程序服务上的控制台,我可以浏览到wwwroot目录,并查看azure dev ops publish正在更新文件。还查看了环境变量,没有设置ASPNETCORE_ * vars。

不知所措。

Program.cs

    public static IWebHost BuildWebHost(string[] args)
    {
        return WebHost.CreateDefaultBuilder(args)
            .UseStartup<Startup>()
            .UseUrls(new[] { "http://localhost:44399","http://*:80" })
            .Build();

    }

    public static void Main(string[] args)
    {
        BuildWebHost(args).Run();
    }
}

谢谢!

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,我无法通过Azure DevOps管道部署应用程序以在Azure AppService上运行。

对我有用的是使用Azure门户而不是Azure DevOps门户来设置构建和发布管道。

如果创建一个Azure AppService通过Azure门户托管应用程序,然后转到其“部署管理”部分,则将发现(截至今天)创建部署的向导。在选项中,您将找到Azure Pipelines(预览)。遵循该向导的操作应在您的Azure DevOps项目中创建一个新的生成和发布管道,并将触发它们。

这使它在我身上发挥了作用。

总而言之,使用相同的Azure DevOps项目和Azure AppService资源,无法从前者手动创建构建和发布管道,但是在Azure上资源的“部署管理”部分中的向导之后自动创建了管道门户有效。

快速浏览后,这两个管道看起来与我手动创建的管道完全相同,但是您可以做什么!