如何强制执行A​​zure虚拟应用程序的基本路径?

问题描述

我有一个Azure应用服务,其中托管了两个虚拟应用(Asp.Net Core Blazor应用,如果重要)。虚拟应用程序URLS类似于

https://site.azurewebsites.net/site1

https://site.azurewebsites.net/site2

我注意到一些内部路由似乎没有考虑虚拟应用程序路径。例如,将站点链接到“ /”路由的链接导航到https://site.azurewebsites.net,而不是相应的“基本”虚拟应用程序路径。有什么方法可以在我的应用程序中或在azure配置中处理此问题?

谢谢您的帮助!

解决方法

在Hassan的建议中,在App Service上,每个应用程序都有默认的根路径(/)映射到D:\ home \ site \ wwwroot,默认情况下将代码部署到该目录。如果您的应用程序根目录位于另一个文件夹中,或者您的存储库中有多个应用程序(如您的情况),则可以在此处编辑或添加虚拟应用程序和目录。

要配置虚拟应用程序和目录,请指定每个虚拟目录及其相对于网站根目录(D:\ home)的相应物理路径。 (可选)您可以选中“应用程序”复选框,以将虚拟目录标记为应用程序。

从Azure门户>导航到您的WebApp->设置(配置)->路径映射>虚拟应用程序和目录。

enter image description here enter image description here

,

如果通过应用服务刀片中的控制台Kudu控制台进行浏览,您会注意到一个目录,该目录在wwwroot下是您的应用程序默认路由到的根目录。您可以从“应用程序设置”边栏选项中进行更改。同样在此目录中,您会发现可以创建其他文件夹(也称为虚拟应用程序),它们将以您希望的方式工作。