通过标头位置重定向PHP丢失流量

时间:2017-05-11 17:22:45

标签: php redirect

我有一个网站,使用以下网址将大量流量重定向到其他网站:

header("Location: http://example.com/")

基本上,这个过程如下:

  1. 用户进入我的网站并通过一些安全检查,记录他们的访问并将他们重定向到另一个页面。 (他们没有登录,他们的IP被检查,推荐人等)
  2. 验证用户日志条目(条目已在步骤1中创建),并将其重定向到外部URL。
  3. 用户现在位于外部URL网页上。
  4. 在步骤1初始化和步骤3完成之间,一切都是自动的。整个过程通常需要1-2秒才能完成,用户最终会进入最终的外部网站。

    我遇到的问题是,大约35%的流量在步骤2和3之间消失。我在步骤2中的header("Location:...之前直接创建了一个调试日志条目,而在最顶层创建了另一个步骤3中的文件,并存在差异。

    为了总体而言,第2步每分钟大约有4000名用户,而第3步每分钟只有大约2500名用户。

    我完全不知道是什么导致这种情况发生,我希望有人能够提供一些见解。

    对于调试,我只是在发送访问者之前在步骤2中将条目插入数据库,并且在加载外部网站时立即在步骤3中插入条目。用于此的代码是:

    第2步结束:

    $query = "INSERT INTO log SET step = '2', time = '".time()."'";
    $result = $db->query( $query );
    
    header( "Location: " . $chosen['url'] );
    die();
    

    第3步加载数据库类后启动:

    $query = "INSERT INTO log SET step = '3', time = '".time()."'";
    $result = $db->query( $query );
    

    请注意,步骤2中的日志记录和重定向之间没有任何代码。 <{1}}基本上不可能达不到。

0 个答案:

没有答案