我需要设置会话超时,至少需要8个小时,并且我无权访问php.ini文件,因此可以在.htaccess中完成吗?
这是我的htaccess,10个仅用于测试,在10秒钟后会话仍然存在,因此我认为未正确设置该值。
<IfModule mod_php5.c>
#Session timeout
php_value session.cookie_lifetime 10
php_value session.gc_maxlifetime 10
</IfModule>
# Run Php without filename extension
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php
这是php代码
<?php
ini_set('session.cookie_lifetime', 10);
ini_set('session.gc_maxlifetime', 10);
session_start();
if(!isset($_SESSION['a'])){
header("Location: login");
}
我该如何实现?通过服务器正在运行php 5.6的方式,谢谢
答案 0 :(得分:0)
在.htaccess
中,您需要将session.cookie_lifetime
设置为字符串
php_value session.cookie_lifetime "10"
在PHP中,您使用session_set_cookie_params()
进行了设置。参见session_set_cookie_params