不允许从IIS(2008 R8)提供/下载PBF(街道地图mapbox矢量文件)文件。
背景
使用react开发服务器时,可以正常使用PBF
//Startup.cs
if (env.IsDevelopment())
{
spa.UseReactDevelopmentServer(npmScript: "start");
}
这些文件将正确显示在地图上。
但是,使用
将.NET Core应用程序部署到IIS时ASPNETCORE_ENVIRONMENT =生产
设置。这些文件实际上已被阻止。
我添加了MIME类型
我相信这是IIS之类的东西,就像我说的那样,在开发中的React Server上,它们可以正常加载。
关于为何仍然无法下载的任何线索?
谢谢
答案 0 :(得分:0)
.net核心基本上不支持IIS虚拟目录。由于.net核心项目是使用反向代理在IIS中提供服务的方式。因此,在startup.cs文件中,执行以下操作:
// Configure the virtual directory
app.UseStaticFiles(new StaticFileOptions {
FileProvider = new PhysicalFileProvider(@"\\Server\Directory\.."),
RequestPath = "/NameOfDirectory",
ContentTypeProvider = provider,
OnPrepareResponse = (context) => {
if (!context.Context.User.Identity.IsAuthenticated) {
context.Context.Response.Redirect("LoginPage");
}
}
});