iis Blazor相对URL

sqserrrh  于 2022-11-12  发布在  其他
关注(0)|答案(3)|浏览(132)

我将navlink定义如下
<NavLink href="/intro"></NavLink>
在开发阶段,它运行得很好,因为站点的根目录和blazor应用程序在同一级别。在生产阶段,我必须把blazor站点放在默认iis网站的一个文件夹中。所以我的url变成了这样
http://something/apps/cor/
所以<NavLink href="/intro"></NavLink>最终会尝试转到http://something/intro而不是http://something/apps/cor/intro
我尝试了/introintro,结果都是错误的行为。我不知道如何使这些链接相对于blazor根而不是iis根。

gpnt7bae

gpnt7bae1#

路径前面的点。./intro是你怎么做的

u0njafvf

u0njafvf2#

index.html上,您应该有<base href="/apps/cor/" />

fwzugrvs

fwzugrvs3#

我必须在_Layout.cshtml中执行以下操作:

@inject IWebHostEnvironment Environment;

// in <head> :
@if (Environment.IsDevelopment())
{
    <base href="~/" />
}
else
{
    <base href="~/myApp" />
}

<NavLink href="page"></NavLink><NavLink href="./page"></NavLink>工作。

  • 在本地主机上:https://localhost:44393/page
  • 在服务器上:https://example.com/myApp/page

相关问题