【问题标题】:Increasing Execution Time for php增加 php 的执行时间
【发布时间】:2018-01-02 20:56:15
【问题描述】:

更新:这不是一个重复的问题!我研究并尝试了许多选项/答案,但网页仍然不允许用户在 20 秒后上传文件。

更新:我尝试从 fast-cgi 切换到 php-fpm,但它对我也不起作用。为了克服 20 秒的超时,我还应该改变什么?

当我通过网络浏览器上传大文件时,恰好在 20 秒后,它会停止上传。具体来说,大约 40% 的 100 MB 文件在 20 秒内上传正常;我在 Chrome 浏览器下看到上传的百分比。然后,百分比值在 20 秒后停止并显示 ERR_CONNECTION_RESET 错误。我检查了日志,但没有任何关于该问题的信息。

我的php.ini配置如下:

max_execution_time 300000
max_input_time 300000
upload_max_filesize 500M
post_max_size 500M
memory_limit 1024M
max_file_uploads 30
Timeout 8000 (in apache2.conf)
LimitRequestBody 0 (in htaccess)

为了增加执行时间,我还应该进行哪些更改?显然,有些配置不允许在 20 秒后上传文件。我的假设是 Apache 配置中有一些东西需要调整。

【问题讨论】:

  • 你试过设置“set_time_limit(8000);”在您的上传脚本之前?
  • @Ciccio 是的,我试过了,但没有帮助。
  • @Morteza 我尝试了 300000 但到目前为止没有运气

标签: php apache timeout debian apache2


【解决方案1】:

改变值

并重新启动您的 apache 或 nginx tu 加载更改

在ubuntu中你可以使用这个命令重启apachesudo service apache2 restart

【讨论】:

  • 我尝试了你提到的所有方法,但到目前为止没有任何进展。有什么想法吗?
  • 错误未显示,因为网页成为浏览器的默认错误页面,提示无法访问网站
  • 上传代码没有问题,小文件上传正常,另外,这是新服务器,在旧服务器上传完美
  • 您确定您的服务器防火墙没有阻止您的代码吗?
  • 你的防火墙是什么?
【解决方案2】:

您应该更改 php.ini 文件中的 max_input_time、upload_max_file_size 和 post_data_limit。它应该可以工作。

【讨论】:

  • 我在 php.ini 中找不到 post_data_limit。你能告诉我怎样才能找到它吗?还是你写 post_data_limit 时的意思是 post_max_size?
  • 对不起,这是 post_max_size
【解决方案3】:
<IfModule mod_php5.c>
   php_value post_max_size 100M
   php_value upload_max_filesize 100M
   php_value memory_limit 100M
   php_value max_execution_time 300000
   php_value max_input_time 300000
   php_value session.gc_maxlifetime 1200
</IfModule>

将其插入 .htaccess 文件中。试试它是否有效

【讨论】:

  • 感谢您的回答,我试过了,但没有帮助。
  • 是的,我更改的值比您提供的值大几倍。显然,我还没有遇到另一个配置。
猜你喜欢
  • 2011-12-06
  • 2011-07-05
  • 1970-01-01
  • 1970-01-01
  • 2013-04-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多