【问题标题】:While uploading large files session is timed out上传大文件会话超时
【发布时间】:2017-09-28 09:39:20
【问题描述】:

我在 Nginx 服务器中使用 cakephp 应用程序工作会话主题:

当我上传需要一个多小时的大文件时,会话超时,一旦上传百分比达到 100%,页面就会刷新并显示登录页面。我是这个会话概念的新手。

尝试在应用程序中添加以 cookie_lifetime 开始的会话:

session_start([
  'cookie_lifetime' => 86400,
]);

修改php.ini:

upload_max_filesize = 3072M
post_max_size = 3072M
session.gc_maxlifetime = 6144 

如何使当前会话处于活动状态并访问会话中存储的值?如何增加会话超时?

【问题讨论】:

标签: php session cakephp nginx session-variables


【解决方案1】:

将 PHP 时间限制设置为 60 分钟

set_time_limit(3600);
ini_set('set_time_limit', '3600');

设置 PHP 最大执行时间

ini_set('max_execution_time',3600);

设置 PHP 最大输入时间

ini_set('max_input_time','200')

设置会话生命周期

ini_set('session.gc_maxlifetime',84000);
ini_set('session.cookie_lifetime',84000);

设置内存限制

ini_set('memory_limit','512M');

设置最大文件大小

ini_set('upload_max_filesize', '3072M');
ini_set('post_max_size', '3072M');

【讨论】:

  • 谢谢。我添加了所有参数但没有结果。问题仍然存在。
  • @Dollyh 我更新了答案,复制代码并重试。
  • 你应该做错了什么。我个人有这个,它对我来说很好用。在我的网站上,正在上传电影和大片段。尝试将大小和时间值编辑为您自己的值。 (让它们更大)
  • 好的,我再试试。在我的情况下,上传时间将超过 2 小时,具体取决于客户端带宽。据此,我增加了值。为了快速检查,我将会话 maxlifetime 设置为 1 分钟并检查仍然显示 maxlife 时间为 1 小时。但是当我通过 phpinfo();它显示了更新的值。
  • 您是在使用 ini_set 还是在更新 .ini 文件中的值?
猜你喜欢
  • 2015-12-23
  • 1970-01-01
  • 2010-12-30
  • 2011-11-13
  • 1970-01-01
  • 2014-06-11
  • 2015-10-10
  • 2017-03-11
  • 1970-01-01
相关资源
最近更新 更多