【发布时间】:2025-03-07 03:15:01
【问题描述】:
我遇到了 ASP.NET Core 无法正确提供静态文件的问题。我在 wwwroot 下的 node_modules 中有部分应用程序。在大多数情况下,所有文件都有效,但也有例外。 *.js.map 文件被路由到 MVC 控制器,为我的 MVC 页面而不是实际文件提供服务。结果,我在浏览器中收到错误,例如
SourceMap解析失败:http://localhost:5000/node_modules/bootstrap/bootstrap.min.css.map
走同样的路,我的 web 字体,比如 Bootstrap 中包含的字体,也没有得到正确的服务,也由 MVC 中间件而不是静态文件中间件处理。似乎所有驻留在 node_modules 中的文件都应该路由到我的静态文件中间件,这并没有发生。 谢谢。
公共无效配置(IApplicationBuilder 应用程序,IHostingEnvironment env,ILoggerFactory loggerFactory) { loggerFactory.AddConsole(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseStaticFiles(); app.UseStaticFiles(新的静态文件选项 { FileProvider = new PhysicalFileProvider(Path.Combine(env.WebRootPath, @"node_modules")), RequestPath = new PathString("/node_modules"), ServeUnknownFileTypes = true }); app.UseMvc(配置 => { config.MapRoute("默认", "{controller}/{action}/{id?}", 新的{控制器=“家”,动作=“索引”}); config.MapRoute("AngularDeepLinkingRoute", "{*url}", 新的{控制器=“家”,动作=“索引”}); }); }【问题讨论】:
标签: asp.net-core .net-core asp.net-core-mvc