一、UseDefaultFiles()中间件默认会去查找的地址信息的顺序。
● Index.htm
● Index.html
● default.htm
● default.html
新增的default.html文件需要放入wwwroot文件夹的根目录中,否则无法运行。
(在实验中发现,越向后越优先级越高,比如:wwwroot文件夹中index和defaule同时存在时,生效的是default。一直不太明白)
二、重新定义默认文件 举个例子:
//Startup.cs中的Configure()中加以下内容
DefaultFilesOptions defaultFilesOptions = new DefaultFilesOptions();
defaultFilesOptions.DefaultFileNames.Clear();
defaultFilesOptions.DefaultFileNames.Add("html1-1.html");
app.UseDefaultFiles(defaultFilesOptions);
//这样即便是index.html还存在,默认文件也是html1-1.html
app.UseStaticFiles();
三、终极解决办法 UseFileServer()中间件
UseFileServer()结合了这3个中间件的功能:
● UseStaticFiles()、
● UseDefaultFiles()
● UseDirectoryBrowser()