记住 PHP 会话隐私浏览
我正在开发一个分析脚本,人们将能够将其添加到他们的页面中,以便跟踪访问者数据。我遇到的一个问题是设计一种方法来跟踪个人从私人浏览器(即隐身)查看某人页面时的会话。
这是我使用的脚本,用于查看是否有人观察某人是否处于活动状态超过30分钟,如果他们有,将创建一个新会话,如果没有,那么他们将恢复上一个会话。
        session_start();
        $max_time = 1800;
        $current  = time();
        if (!isset ($_SESSION['Stationary'])){
            $_SESSION['Stationary'] = time();
            $session = $_SESSION['Stationary'];
        }
        if (!isset ($_SESSION['Inactive'])) { 
            $_SESSION['Inactive'] = time();
        } else {
            $session_life = $current - $_SESSION['Inactive'] ;
            if ($session_life > $max_time ) {
                session_destroy();
                session_start();
                $_SESSION['Inactive'] = time();
                $_SESSION['Stationary'] = time();
                $session = $_SESSION['Stationary'];
            } else {
                $_SESSION['Inactive'] = time();
                $session = $_SESSION['Stationary'];
            }
        }
当用户从常规浏览器(IE.Chrome Incognito),但是,当他们在iPhone之类的东西上查看它时,在私人浏览中,每次他们访问新页面时,都会呈现一个新会话 - 否则我不会遇到这个问题。
所以我的问题是,我知道在私人浏览器中查看页面是通过临时缓存实现的,一旦浏览器关闭,就会清除该缓存,但是为什么即使浏览器没有关闭,打开链接也会破坏他们以前的会话,即使链接指向另一个页面,页面上的脚本相同?
有没有解决方法?
编辑:我应该注意,这个脚本被放置在一个php文件中,其头文件也要用作JavaScript文件。application/json
 
					 
				 
				    		 
				    		 
				    		 
				    		