当前位置: 首页 > 知识库问答 >
问题:

为用户文件管理器php mysql设置文件夹的最大大小

蓬思博
2023-03-14

我希望你一切都好。
我正在用MySQL和AdminLTE3用纯PHP创建一个学习平台。
我到了为每个用户创建文件管理器的时候,遇到了以下问题。
我在文件夹中有以下结构:
/var/www/html/uploads/users/<%hash(用户ID)%>,我要找的是每个文件夹<%hash(用户ID)%>每个用户的最大大小是2GB。
我正在使用MacOs BigSur进行开发,但在生产中它将在Ubuntu Server 18上!

我没有尝试设置max_file_size_upload,我正在尝试将每个用户文件夹的最大大小设置为2GB

共有1个答案

扶绍辉
2023-03-14

会是哪种类型的文件?我会非常谨慎地允许用户上传任意文件到我的web服务器。如果他们上传了.php文件,他们就可以作为运行Web服务器的用户运行任何东西。

事实上,我会将它们保存在数据库中,并使用字段来创建元数据。这样,您就可以压缩和保存文件,并将大小和文件名存储为元数据。如果您正在使用If作为参考等,而不需要快速访问,我会推荐这一点。

或者,正如这个linux.se答案所述,您可以为每个用户创建一个装入的文件夹,并让文件系统整理与配额有关的所有内容。我可能还会以某种方式查看文件夹中的chroot。这将(理论上)允许您向他们提供对文件的SFTP/SSH访问权限。

我还将研究在类似于生产服务器的环境中执行所有操作。我想起了流浪汉和码头工人spring。

或者,如果所有文件上载都由php处理,您可以节省使用的文件空间并保持一个运行总数,在php sript中确保它们没有超过其配额。

 类似资料:
  • 我没有任何方法在接口中获取文件大小。那么,有什么方法可以限制webflux中上传文件的最大大小,而不是复制它呢?我知道有像这样的标题,但是看起来并不安全。

  • 我正在使用JHipster开发基于Spring Boot和AngularJS的应用程序。我的问题是如何设置上传文件的最大大小? 如果我试图上传到大文件,我会在控制台中获得以下信息: 和状态为500的服务器响应。 怎么设置?

  • 问题内容: 我们使用logrotate并每天运行一次…现在,在某些情况下,日志已经显着增长(请参阅:gigbaytes)并杀死了我们的服务器。所以现在我们想为日志设置最大文件大小。 我可以将其添加到logrotate.conf吗? 大小50M 它将适用于所有日志文件吗?还是我需要在每个日志的基础上进行设置? 或其他建议? (ps。我知道,如果您想收到通知,日志会像所描述的那样增长,而我们想要做的事

  • 所谓的“大项目”,我这里真没有一个明确的概念。是文件数据达到具体多少个文件?还是业务逻辑模块达到多少个?还是项目的访问量达到多少PV?至今没有一个精确的数字来定义什么程序是“大项目”。这里姑且认为:业务功能模块众多(访问流量流量暂且不理)。纵使业务功能模块再多,就算一个application也可以容纳的下。对于业务模块众多的项目,文件管理解决方案如下: 1、使用子目录。经常业务模块相近的控制器文件

  • 我正在使用PyCharm社区版2016,我注意到我无法打开大型数据输入文件或日志(20MB)。编辑简单地说“文件XXX太大(大小)”。 不仅如此,似乎没有办法改变限制。官方文档提到了一种增加使用intellisense的最大大小的方法,但根本没有增加可以打开的文件的最大大小。这是真的吗?这真的是一个完全无法打开大型日志的IDE吗?

  • 问题内容: 如何在Java中检索文件夹或文件的大小? 问题答案: 如果文件不存在,则以字节为单位返回文件的长度。没有内置的方法来获取文件夹的大小,你将不得不递归遍历目录树(使用代表目录的文件对象的方法)并为自己积累目录大小: 警告:此方法不足以用于生产。可能返回并导致。另外,它不考虑符号链接,并且可能具有其他故障模式。