mapbox文件pbf阻止了IIS服务器

时间:2019-04-03 10:15:30

标签: iis asp.net-core iis-7.5 osm.pbf

不允许从IIS(2008 R8)提供/下载PBF(街道地图mapbox矢量文件)文件。

背景

使用react开发服务器时,可以正常使用PBF

//Startup.cs
if (env.IsDevelopment())
{
   spa.UseReactDevelopmentServer(npmScript: "start");
}

这些文件将正确显示在地图上。

但是,使用

将.NET Core应用程序部署到IIS时
  

ASPNETCORE_ENVIRONMENT =生产

设置。这些文件实际上已被阻止。

我添加了MIME类型

enter image description here

我相信这是IIS之类的东西,就像我说的那样,在开发中的React Server上,它们可以正常加载。

关于为何仍然无法下载的任何线索?

谢谢

1 个答案:

答案 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");
                }
            }
        });