文件可以在PHP中上传超时吗?

Ben*_*Rae 35 php upload

嗨我是非常新的PHP,我已经创建了一个表格,非常大的csv文件上传到我的服务器.有人向我提到,由于上传文件很大,浏览器可能会超时,这是真的吗?如果是的话,可以预防吗?

谢谢你的帮助!

Ion*_*tan 56

您需要以下php.ini设置的正确值:

  1. max_input_time(不是 max_execution_time!)
  2. 的upload_max_filesize
  3. 的post_max_size

有可能

  1. memory_limit的

  • max_input_time的PHP文档说:"它是从接收服务器上的所有数据到脚本执行开始的那一刻开始计算的." 那么为什么文件大小会有所不同呢?在此计时器启动之前已收到所有数据. (6认同)

Gum*_*mbo 31

有些配置指令可能导致大型上载失败,如果它们的值太小:

PHP

阿帕奇

  • TimeOut   服务器在请求失败之前等待某些事件的时间
  • LimitRequestBody   限制从客户端发送的HTTP请求正文的总大小

可能还有更多.


小智 6

我能够使用以下设置解决这个问题,您可以使用不同的值,但您明白了:

对于我的服务器,我将这些行放在脚本目录内的“.user.ini”文件中,您的服务器可能会查找不同的文件,如果您在服务器上执行 phpinfo('user_ini.filename') ,它会吐出您需要将值放入其中的文件

max_execution_time = 1800
max_input_time = -1
post_max_size = 100M
upload_max_filesize = 100M
memory_limit = 256M
Run Code Online (Sandbox Code Playgroud)


Ron*_*nes 5

解决PHP中大文件上传的糟糕处理的好方法是使用像JUpload这样的上传器,它会在发送文件之前将文件拆分成块.这也为您的用户带来好处,他们在上传时获得了正确的进度反馈,并且他们可以一次上传多个文件.