在asp.net mvc中保护目录的最简单方法是什么?
目前我有一个misc文件夹,属于该网站的众多用户。理想情况下,我不希望一个用户能够在浏览器中键入其中一个文档的URL并且可以访问它。这些文件只能通过控制器操作下载,该操作将通过验证用户凭据然后返回文件来授权下载。
先谢谢
答案 0 :(得分:7)
将文件存储在应用程序数据中,让控制器操作读取文件并将其呈现为FileResult。这样,文件永远不会直接暴露。
答案 1 :(得分:2)
我对这些的解决方案通常是让该目录存在于网络访问的能力之外。例如,不要将它们存储在c:\ inetpub \ wwwroot \ docs中,只需将它们存储在C:\ inetpub \ docs。
确保您的控制器已读/写?特权。
当我添加/删除文件夹时,这为我提供了最佳解决方案,因为我的主机限制了我关闭文件监视器的能力。事实证明,删除应用程序的子文件夹会导致应用程序池回收> _<