0

我有一个 ASP.Net 网站,在某些情况下,它会生成 .pdf 文件和 .csv 文件供用户下载。

现在我的问题是:在网络服务器上保存这些文件的默认目录是什么?有没有像 App_... 之类的 ASP.NET 文件夹?

你能推荐什么?

4

5 回答 5

3

如果您不想重复使用文件,请直接流式传输文件而不将其保存到磁盘。

如果将其保存到磁盘,则必须问自己是否该文件的内容对所有用户都可用,或者其他用户可以访问这些文件是否是个坏主意。如果这是一个坏主意,则应该通过相应地设置访问权限来使用户无法使用您放置文件的文件夹。您可以通过将文件夹放在网站目录之外或通过在文件系统或 Web 服务器上设置安全设置来执行此操作。

您基本上可以将文件放在任何对编写文件的用户(通常是 ASP.NET 应用程序池用户)可写的文件夹中。IIRC App_data 文件夹默认情况下对于 ASP.NET 用户是可写的,因此这可能是一个候选者。

于 2012-09-20T18:04:27.617 回答
1

这真的取决于你!我建议您将它们放在解决方案的子文件夹中,以便它们是独立的,您可以轻松控制安全性,而无需担心树下的文件夹。

于 2012-09-20T17:52:58.240 回答
1

文件夹是你告诉它的任何东西。如果您的音量很小,您可以只从内存中流式传输文件,这样它们就不会存储在服务器上。

于 2012-09-20T18:03:42.250 回答
1

您可以为此需要创建适当的文件夹

这里的特定文件夹列表(但你不需要):

App_GlobalResources, 
App_LocalResources, 
App_Resources
App_Themes
App_WebReferences)
App_Code
App_Data
App_Browsers

这里是关于项目结构的 MSDN 链接

链接:http: //msdn.microsoft.com/en-us/library/ex526337%28v=vs.100%29.aspx

于 2012-09-20T17:52:31.977 回答
0

考虑是否要拥有多个 Web 服务器以及在集群中拥有服务器也很重要。要为这种情况做好准备,最好不要将文件保存在 Web 应用程序文件夹下,也不要相对于应用程序路径访问它们,而是将文件保存在您可以轻松暴露的单独文件夹中(仍然会有是安全问题)作为网络路径。

于 2012-09-21T07:54:24.320 回答