PHP配置:max_execution_time和max_input_time

ane*_*yzm 3 php

我可以设置以下PHP配置参数,如下所示:

max_execution_time = 360 max_input_time 360

这样安全有效吗?

我实际上需要我的用户使用基于php的内容管理系统上传大型视频.

因此,每个视频上传都需要几分钟时间.我是否需要更改两者并且值很好?

谢谢

Pek*_*ica 8

根据我的理解,你不得不改变.

如果您只是使用存储视频文件move_uploaded_file,则无需增加您的max_execution_time上传时间,也不计入执行时间.

手册说明了以下max_input_time(强调我的):

这将设置允许脚本解析输入数据的最长时间(以秒为单位),如POST,GET和文件上载.

我没有对此进行测试,但对我而言,这听起来包括客户端上传文件的实际时间,只是将其复制到临时目录所需的时间.我不能担保这个,但我找不到任何关于它的信息.60秒的默认值应该是解析数百兆字节文件的充足时间.

我建议使用真实的测试找出完美的价值.如果连接速度太快,请使用工具将其减速.请参阅此SO问题以获取建议:

模拟慢速网络连接的网络工具

  • @Patrick,那是字节限制.但是如果你的网络服务器很慢,你可能需要增加时间限制([`max_input_time`](http://stackoverflow.com/q/11387113/632951))来解析你收到的那些字节.如果你想对你收到的字节进行操作,你还需要在Web服务器完成任务后增加PHP端执行的时间限制(`max_execution_time`).最后,使用`memory_limit`控制内存限制,使用`session.gc_maxlifetime`控制内存. (2认同)