2011-02-07 67 views
0

我想弄清楚为什么这发生在Chrome浏览器,但不是FF或IE浏览器。 在以下脚本中,$ this-> referrer = $ _SESSION ['URL'];解析/第一次加载页面,如果我刷新页面解析到/404.php

function startSession(){ 
    global $database; //The database connection 
    session_name("Training"); 
    session_start(); //Tell PHP to start the session 

    /* Determine if user is logged in */ 
    $this->logged_in = $this->checkLogin(); 

    /** 
    * Set guest value to users not logged in, and update 
    * active guests table accordingly. 
    */ 
    if(!$this->logged_in){ 
    $this->username = $_SESSION['username'] = GUEST_NAME; 
    $this->userlevel = GUEST_LEVEL; 
    $database->addActiveGuest($_SERVER['REMOTE_ADDR'], $this->time); 
    } 
    /* Update users last active timestamp */ 
    else{ 
    $this->addLogCount($this->id); 
    $database->addActiveUser($this->username, $this->time); 
    } 

    /* Remove inactive visitors from database */ 
    $database->removeInactiveUsers(); 
    $database->removeInactiveGuests(); 

    /* Set referrer page */ 
    if(isset($_SESSION['URL'])){ 
    $this->referrer = $_SESSION['URL']; 
    }else{ 
    $this->referrer = "/"; 
    } 

    /* Set current url */ 
    $this->url = $_SESSION['URL'] = $_SERVER['PHP_SELF']; 
} 

为FF和IE浏览器,它首先解析为/,然后调用页面的地址startSession()刷新。 有没有什么与铬处理这个我需要考虑到的方式?在Chrome

$会话:

Session Object 
(
    [id] => 
    [tracksid] => 
    [username] => Guest 
    [userid] => 
    [userlevel] => 0 
    [time] => 1297103371 
    [logged_in] => 
    [userinfo] => Array 
     (
     ) 

    [url] => /Community/login.php 
    [referrer] => /404.php 
    [type] => 
    [company] => 
    [ip] => 
    [badip] => 
) 

$会议在FireFox:

Session Object 
(
    [id] => 
    [tracksid] => 
    [username] => Guest 
    [userid] => 
    [userlevel] => 0 
    [time] => 1297096106 
    [logged_in] => 
    [userinfo] => Array 
     (
     ) 

    [url] => /Community/login.php 
    [referrer] => /Community/login.php 
    [type] => 
    [company] => 
    [ip] => 
    [badip] => 
) 
+0

浏览器与会话无关。它只保存一个会话ID。这个问题一次可以有多个请求吗? – 2011-02-07 17:35:13

+0

我遇到了Chrome的几个cookie问题,包括会话cookie。它不能解决你的问题,但它可能有助于确定会话cookie是否正确设置 – 2011-02-07 17:39:49

回答

0

记录所有访问404.php。另请看看您的访问日志和错误日志。这样你就知道谁在哪个时间访问哪个URL(我猜想无效的URL由404.php处理)。我怀疑某种Web加速器会尝试下载不存在的文件,或者HTML中没有指定收藏夹图标,因此浏览器会尝试猜测并下载标准图片。