PHP会话超时htaccess文件(PHP session timeout htaccess fil

2019-06-25 08:40发布

嗨,我是新的节目,但我目前工作的一个会话超时问题。 基本上我的会话保持超时,即使我已经改变了的session.gc_maxlifetime。 我想使用其他脚本相同的目录存放不具备maxlifetime组,正在运行的会话数据,因此它会使用较短的值来代替。 为了解决这个问题我已经改变了htaccess的文件,但它仍然是一个1小时30分钟后结束,我需要它持续更长的时间。 我htaccess文件如下。 我看,并尝试了许多关于这款主板的相关职位,但到目前为止没有奏效。 任何想法将不胜感激。

SetEnv PHPRC /home/rocket/public_html/php.ini

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

<IfModule mod_php5.c>
php_value session.save_path "new/username/php_sessions"
php_value session.gc_maxlifetime "86400"
php_value session.cookie_lifetime "86400"

</IfModule>


# END WordPress

Answer 1:

PHP没有做什么,你可能会认为它的会话cookie ...

php_value session.gc_maxlifetime "86400"

这仅仅是设置后可能发生的垃圾收集的时间-因为这里只有一个非常小的机会,会话数据是这段时间,这是不太可能的罪魁祸首后收集垃圾。

php_value session.cookie_lifetime "86400"

这会设置会话cookie过期的时间...... 它不会在更新session_start()因此,如果你在一个页面中,设定时钟滴答作响上启动会话。 从页面移动到页面不会复位“时钟”,这样一个会话cookie_lifetime它被闲置10分钟后未开始后的600将到期- 10分钟,你可能会看到这种行为。

最好的办法是设置php_value session.cookie_lifetime "0" ,这意味着, 只有当用户关闭浏览器会话cookie将到期。

如果你想处理闲置一段时间,最好在会话中设置变量这样做在PHP代码后触发的任意到期,像$_SESSION['expires']和检查/更新/处理,在该开始的每一页。



文章来源: PHP session timeout htaccess file