在 ASP.NET Core 中提供 wwwroot 文件夹外的静态文件
您可以配置中间件来提供来自其他文件夹的静态文件以及默认的 web 根文件夹 wwwroot。
例如,我们要访问 admin 文件夹中的 admin.html,并从 wwwroot 文件夹中的 test.html。
现在,在 Startup 类的 configure() 方法中配置 StaticFiles 中间件,如下所示。
public class Startup{// 此方法由运行时调用。使用此方法配置 HTTP 请求管道。public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory){app.UseStaticFiles();app.UseStaticFiles(new StaticFileOptions() {FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "Content")),RequestPath = new PathString("/Admin")});app.Run(async (context) =>{await context.Response.WriteAsync("Hello World!");});}}
如您所见,app.UseStaticFiles() 启用默认 web 根文件夹 wwwroot 来提供静态文件。
app.UseStaticFiles(new StaticFileOptions() {FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "admin")),RequestPath = new PathString("/admin")});
现在我们就可以访问静态文件了。