在网站中存储用户上传的文件的最佳方式是什么?

2023-12-28

我正在尝试创建一个网站,需要在其中存储一些用户上传的文件(如一些个人资料图片、一些 xml 文件等)。

那么存储这些文件的最佳方式是什么?

目前,我正在服务器上为每个注册的新用户创建一个新目录,并将每个用户的文件存储在各自的目录中,但有人告诉我这不是最好的方法。

那么,我该如何存储这些文件呢?我是否创建一个公共目录并根据用户 ID 或与用户相关的内容命名文件,或者继续为每个用户创建一个新目录?


可行的解决方案将取决于您的要求,例如您预计有多少用户。每个用户一个目录的解决方案可能很快就会遇到一些文件系统限制(对于 ext3,一个目录中的最大子目录数固定为 32000)。

每个用户一个文件在很长一段时间内应该没问题(请参阅:一个目录中有多少个文件算太多? https://stackoverflow.com/questions/466521/how-many-files-in-a-directory-is-too-many).

最后,如果您的用户群增长,您可以使用固定数量的分片(例如,基于用户 ID)来限制目录数量和每个目录的文件数量(例如,请参阅git 如何以松散格式存储其对象 http://web.archive.org/web/20120211182825/http://book.git-scm.com/7_how_git_stores_objects.html).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在网站中存储用户上传的文件的最佳方式是什么? 的相关文章

  • GWT 的 RPC 与 AJAX 不同吗?

    与 AJAX 调用相比 GWT Google Web Toolkit 的 RPC 远程过程调用 用于从浏览器 javascript 到服务器的异步操作有何不同或相似 如果它们不同 有人可以帮助我理解它们有何不同吗 我还听说这个 RPC 实现
  • 检查字符串中是否存在所有字符值

    我目前正在做这项任务 但我被困住了 目标是读取文件并查找文件中的字符串中是否存在这些字符值 我必须将文件中的字符串与作为参数放入的另一个字符串进行比较 但是 只要每个字符值位于文件中的字符串中 那么它就 匹配 示例 输入和输出 a out
  • 如何压缩和解压文件?

    如何压缩和解压 DDMS 中已有的文件 data data mypackage files 我需要一个简单的例子 我已经搜索过与 zip 和 unzip 相关的内容 但是 没有一个例子可供我参考 谁能举个例子 提前谢谢 查看 zip 功能的
  • 直接从 Javascript 代码访问 SVG 文件

    我有这个 HTML 代码 它调用我的 javascript 代码 该代码用于仪表 在 javascript 代码中 我尝试访问 SVG 文件 并修改 仪表的 指针以显示所需的值 该代码运行良好 但是 我不想在 HTML 中调用 对象 id
  • Java 错误:java.io.FileNotFoundException:C:\Users\FSSD\Desktop\My Test(访问被拒绝)

    我有一个java代码 用于将文件从一个文件夹复制到另一个文件夹 我使用了以下代码 我使用的是Windows 7操作系统 复制文件夹 java import java io File import java io FileInputStrea
  • 如何读取文件,将数据放入JTable中,然后修改单元格/删除行并将数据保存到文件中? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要从 txt 文件中读取日期并将其放入 GUI 中的 JTable 中 然后修改一些记录或删除一些行并将新数据保存到文件中 我可以
  • 保存录制的 AVAudioRecorder 声音文件:现在怎么办? (iOS、Xcode 4)

    在我的应用程序中 我希望用户能够录制一个声音文件并播放它 然后保存该声音文件以供以后使用 我用了本教程 http www techotopia com index php Recording Audio on an iPhone with
  • C# 写入文件的性能

    我的情况概述 我的任务是从文件中读取字符串 并将它们重新格式化为更有用的格式 重新格式化输入后 我必须将其写入输出文件 这是必须完成的操作的示例 文件行示例 ANO 2010 CPF 17834368168 YEARS 2010 2009
  • Android Webview:无法调用确定的可见性() - 从未见过 pid 的连接

    我有一个 Android Webview 当我单击链接下载文件 pdf 图像等 时 我收到一条错误消息 Error message Cannot call determinedVisibility never saw a connectio
  • 是否可以使用 Java 在文件上设置自定义元数据?

    是否可以在 File 实例上获取和设置自定义元数据 我想将通过系统处理的文件用作某种非常简单的数据库 其中每个文件都应包含其他自定义元数据 例如发件人的电子邮件 一些时间戳等 它是针对内部系统的 因此安全性不是问题 在 java 7 中你可
  • 打开/尝试读取文件[重复]

    这个问题在这里已经有答案了 我尝试简单地读取文本文件的内容并将其存储到数组中 但是 ins open file txt r array for line in ins array append line ins close 它给了我一个 打
  • 以编程方式在java的resources/source文件夹中创建文件?

    我有两个资源文件夹 src 这是我的 java 文件 资源 这是我的资源文件 图像 properties 组织在文件夹 包 中 有没有办法以编程方式在该资源文件夹中添加另一个 properties 文件 我尝试过这样的事情 public s
  • C 编程 - 文件 - fwrite

    我有一个关于编程和文件的问题 while current NULL if current gt Id Doctor 0 current current gt next id doc current gt Id Doctor if curre
  • 我可以使用 mod_rewrite 更改文件扩展名吗?例如 .jpeg 到 .jpg

    我希望使用 Apache mod rewrite 将文件提供为 jpg 而不是 jpeg 这可能吗 尝试这个 RewriteEngine on RewriteRule jpeg 1 jpg
  • 在 Python 中搜索文本文件并打印相关行?

    如何在文本文件中搜索关键短语或关键字 然后打印关键短语或关键字所在的行 searchfile open file txt r for line in searchfile if searchphrase in line print line
  • 从文件 C 中的单行读取多个变量类型

    好吧 我一整天都在做这个 但我一辈子都无法把它记下来 也许你们可以帮忙 我有一个文件 内容如下 1301 105515018 水手长 迈克尔 R ABC 123 R01 1301 103993269 卡斯蒂利亚 小迈克尔 ABC 123 R
  • Angular 5 - ag-grid 18.0.1 - 边缘崩溃

    我一直在到处搜索 但无法找到与此相关的任何信息 很可能是因为 ag grid update 18 x 是新的 无论如何 似乎在将 ag grid 从 17 1 1 更新到 18 0 1 后 任何带有 ag grid 的页面最终都会导致 ED
  • React 文件预览 (FIREBASE)

    我目前将文件存储在 Firebase 存储中 我希望能够实时生成每个文件的文件预览 映射 例如 PDF 文件会将第一页显示为图像 docx 将是文档的第一页 pptx 将是第一张幻灯片 未知文档将是默认文档符号 有人知道有什么好的服务可以轻
  • Javascript正则表达式用于字母字符和空格? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我需要一个
  • python的shutil.move()在linux上是原子的吗?

    我想知道python的shutil move在linux上是否是原子的 如果源文件和目标文件位于两个不同的分区上 行为是否不同 或者与它们存在于同一分区上时的行为相同吗 我更关心的是如果源文件和目标文件位于同一分区上 shutil move

随机推荐

  • Polymer HTML 导入已弃用

    所以我刚刚开始使用聚合物并收到以下消息 Deprecation Styling master document from stylesheets defined in HTML Imports is deprecated and is pl
  • (MongoDB) 在同一管道中结合并集和交集

    我在最新版本的 mongoDB 和 pymongo 中运行以下聚合管道 project union setUnion query a query b unwind union group id union ID date a addToSe
  • 如何在 Google 表格中创建“反向数据透视表”?

    我正在尝试生成一个 反向枢轴 功能 我一直在努力寻找这样的功能 但找不到已经存在的功能 我有一个汇总表 其中最多有 20 列和数百行 但是我想将其转换为平面列表 以便我可以导入到数据库 甚至使用平面数据来创建更多数据透视表 所以 我有这种格
  • 单独的环境配置elastic beanstalk

    我正在弹性豆茎中创建一个具有网络层和工作层的 Rails 应用程序 使用 ebextensions 内的 ELB 设置启动 Web 环境是正常的 但我无法启动工作环境 因为它没有 ELB 有没有办法为每个环境分离 ebextensions
  • C# 将字符串转换为双精度/十进制并返回字符串,保留尾随零,为千位添加逗号

    我试图获取用户输入 解析它 然后使用 String Format 显示 用逗号格式化数千个 So if user provides 1000 I will display 1 000 1000 00 gt 1 000 00 1000 0 g
  • 设置稀疏矩阵多个值的快速方法

    我在 MATLAB 中有一个稀疏的 5018x5018 矩阵 其中大约有 100k 个值设置为 1 即大约 99 6 为空 我正在尝试将大约 5 的 0 翻转为 1 即大约 125 万个条目 我想要翻转的矩阵中有 x 和 y 索引 这是我所
  • 仅服务器端插件

    我有一个不想让客户端看到的插件 不幸的是 它总是为服务器和客户端构建的 如何防止这种情况发生
  • 标记问题中的 AppSettings

    我试图将其放入我的标记中 但由于某种原因 这不被接受 我在这里做错了什么 要求是我不使用辅助方法 但在标记中使用表达式构建器 根据文档 http msdn microsoft com en us library d5bd1tad aspx
  • 当 MethodHandle 更快时,为什么要使用反射来访问类成员?

    随着 Java 7 的发布 MethodHandle https docs oracle com javase 8 docs api java lang invoke MethodHandle html 它允许用户像使用其底层字节码一样调用
  • 如何使用数据列表使用 FIND_IN_SET

    我用过FIND IN SET之前曾多次发生过 但这次的情况有点不同 早些时候我在表中搜索单个值 例如 SELECT FROM tbl name where find in set 1212121212 sku 但现在我有我想要在表中搜索的
  • 用 C 加密纯文本文件

    我目前正在用 C 语言编写一个从配置文件读取的 Linux 应用程序 该配置文件包含一些我想要加密的数据 因此它不是纯文本 我花了几个小时研究这个问题 但还没有找到可行的解决方案 由于应用程序需要从配置中读取 我需要能够动态对其进行加密和解
  • Doctrine2 同一实体上的两个存储库

    我不知道如何清楚地解释我的问题 但我会尝试 我有一个包含两个模块的项目 Admin User 我还有两个教义实体给我带来了一些麻烦 Shop Products 我的问题是这些实体必须由管理员和用户模块使用 但原则是 一个实体 一个存储库 据
  • 在我的例子中,如何本地化一个简单的 HTML 网站页面?

    I am NOT开发任何包含以下内容的 Web 服务应用程序client侧面和后端server端 如 Java EE 应用程序或 Ruby on Rails 相反 我只是开发一个 HTML网站页面 在此页面上 有两个国旗图像 美国和中国 用
  • 无法根据 WSO2 API Manager 中的消息中介策略调用动态端点/URL

    我正在使用 APIM 3 1 0 我需要根据标头或请求参数重定向 API 我尝试过请求参数但无法调用不同的API 我已使用以下自定义中介策略并将其添加到测试 API 但无法调用不同的 URL 每次调用 API 时 即使我将操作值作为菜单传递
  • Fancybox 在 IE 中加载 iframe 时卡住

    我在使用 fancybox 的 IE 中的 iframe 中加载 PDF 时遇到问题 当我点击链接时 我会得到 gif 加载程序 并且它会永远旋转 控制台或页面或类似内容中没有错误 所有版本的 IE 都会出现此问题 所有其他浏览器都工作正常
  • 保持用户界面最新的最佳方法是什么?

    这个问题是我的问题的改进观察数据变化的不同方式 https stackoverflow com questions 3161392 different ways of observing data changes 我的 C 应用程序中仍然有
  • 如何隐藏ng网格中的列

    这是我的代码 索引 html
  • 配置 WiX 自动设置产品版本属性?

    目前 每当我构建包时 我都必须手动增加 P roduct wxs 文件中的 Version 属性 如下所示
  • 如何找到 JavaScript 数组中包含的最大数字?

    我有一个简单的 JavaScript 数组对象 其中包含一些数字 267 306 108 有没有一个函数可以找到这个数组中最大的数字 辞职来救援 http ejohn org blog fast javascript maxmin Arra
  • 在网站中存储用户上传的文件的最佳方式是什么?

    我正在尝试创建一个网站 需要在其中存储一些用户上传的文件 如一些个人资料图片 一些 xml 文件等 那么存储这些文件的最佳方式是什么 目前 我正在服务器上为每个注册的新用户创建一个新目录 并将每个用户的文件存储在各自的目录中 但有人告诉我这