在 ASP.NET Core 中提供 wwwroot 文件夹外的静态文件

您可以配置中间件来提供来自其他文件夹的静态文件以及默认的 web 根文件夹 wwwroot

例如,我们要访问 admin 文件夹中的 admin.html,并从 wwwroot 文件夹中的 test.html

现在,在 Startup 类的 configure() 方法中配置 StaticFiles 中间件,如下所示。

  1. public class Startup
  2. {
  3. // 此方法由运行时调用。使用此方法配置 HTTP 请求管道。
  4. public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
  5. {
  6. app.UseStaticFiles();
  7. app.UseStaticFiles(new StaticFileOptions() {
  8. FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "Content")),
  9. RequestPath = new PathString("/Admin")
  10. });
  11. app.Run(async (context) =>
  12. {
  13. await context.Response.WriteAsync("Hello World!");
  14. });
  15. }
  16. }

如您所见,app.UseStaticFiles() 启用默认 web 根文件夹 wwwroot 来提供静态文件。

  1. app.UseStaticFiles(new StaticFileOptions() {
  2. FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "admin")),
  3. RequestPath = new PathString("/admin")
  4. });

现在我们就可以访问静态文件了。

分类导航