之前寫了一篇關于模拟登入的文章,自我感覺内容不太豐富,今天的這篇文章,希望在内容上能豐富些。本人缺少寫文章的經驗,技術上也是新手,但我會努力的,希望大家多多支援小弟。
建立一個asp.net core 項目的靜态檔案一般是放在項目目錄下wwwroot檔案夾,檔案目錄如下。

在startup.cs檔案的Configure方法中寫入:
app.UseStaticFiles();
這方法的預設路徑正是上面所說的wwwroot目錄。
app.UseStaticFiles(new StaticFileOptions()
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), @"MyStaticFiles")),
RequestPath = new PathString("/StaticFiles")
});
這時候我們運作一下然後輸傳入連結接看到以下效果
這時候我們知道FileProvider是指定路徑,RequestPath是将對外的路徑重寫。即可用 StaticFiles來通路而不是MyStaticFiles。
我覺得這樣位址重寫的好處是可以保證項目的結構不被暴露,有一定的安全性吧。
在出于安全問題預設情況下是不允許浏覽目錄的檔案和檔案夾的,但是如果你需要浏覽的話可以用以下方法。
首先要在startup.cs檔案的ConfigureServices方法中加入:
services.AddDirectoryBrowser();
然後在startup.cs檔案的Configure方法中寫入:
app.UseDirectoryBrowser(new DirectoryBrowserOptions()
Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\images")),
RequestPath = new PathString("/wwwroot/images")
然後可以看到以下效果
這樣我們就可以看到該目錄下的東西了。一般來說還是使用預設的比較好,畢竟出于安全考慮嘛。
因為本人技術有限,寫到這裡就結束了。謝謝大家!