【发布时间】:2020-02-19 09:33:20
【问题描述】:
我在反向代理后面的 IIS 上托管了一个 blazor 服务器端应用程序(使用 ARR)。
我已经尝试了所有我能想到的方法,但我一直收到 404
_framework/blazor.server.js
我的基本 href 设置为“/subsite/”:
<base href="/subsite/" />
我所有的 src 值都是这样的:
<script src="_framework/blazor.server.js"></script>
<script src="_content/BlazorInputFile/inputfile.js"></script>
<script src="animations.js"></script>
所有其他脚本引用都可以正常加载,即使是 _content 数据,但不是 blazor.server.js。
我也为 MVC 应用尝试了旧的 PathBase 技巧,但没有成功:
if (!env.IsDevelopment()) {
app.Use((context, next) => {
context.Request.PathBase = new PathString("/subsite");
return next();
});
}
谁能告诉我如何让 Blazor 意识到在反向代理场景中将 blazor.server.js 放在哪里?
【问题讨论】:
-
blazor.server.js 是一个嵌入式资源。您可以尝试获取文件的副本并像任何其他 js 文件一样静态地提供它。但即便如此,服务器和浏览器之间仍有很多信号-r 喋喋不休。不确定它在您的设置中如何工作。
-
嗯。我不太明白,因为组件也是嵌入式资源,生活在 _content 中,但它发现它们很好。我会尝试抓取它并静态提供它,但这似乎是一个实际的错误 - 我的意思是,你怎么能忘记在 2019 年支持反向代理子站点
-
您是否有任何日志记录可用于查看哪个(以及是否)请求路径以 ASP.NET 结尾?
标签: asp.net-core blazor blazor-server-side