$reference = parse_url( $_SERVER['HTTP_REFERER'] );
if ( stristr( $reference['host'], 'baidu.' ) ){
    //来自于百度
}PS: $_SERVER['HTTP_REFERER'] 对https无效

解决方案 »

  1.   


    我希望,只能从指定的域名来路来访问该页面。直接输入和其他域名来路不能访问或者跳转。
    比如指定www.baidu.com 这个域名来的可以访问。其他域名来的就跳转首页。也不能直接输入该页面来访问。
      

  2.   


    我希望,只能从指定的域名来路来访问该页面。直接输入和其他域名来路不能访问或者跳转。
    比如指定www.baidu.com 这个域名来的可以访问。其他域名来的就跳转首页。也不能直接输入该页面来访问。来路是可以伪造的...所以你最好把你的需求重新设计一下
      

  3.   


    我希望,只能从指定的域名来路来访问该页面。直接输入和其他域名来路不能访问或者跳转。
    比如指定www.baidu.com 这个域名来的可以访问。其他域名来的就跳转首页。也不能直接输入该页面来访问。来路是可以伪造的...所以你最好把你的需求重新设计一下
    我不会让人知道什么来路可以访问的。
    那要如何写啊。老大
      

  4.   

    http://www.php.net/manual/zh/reserved.variables.server.php'HTTP_REFERER'
    引导用户代理到当前页的前一页的地址(如果存在)。由 user agent 设置决定。并不是所有的用户代理都会设置该项,有的还提供了修改 HTTP_REFERER 的功能。简言之,该值并不可信。
      

  5.   


    我希望,只能从指定的域名来路来访问该页面。直接输入和其他域名来路不能访问或者跳转。
    比如指定www.baidu.com 这个域名来的可以访问。其他域名来的就跳转首页。也不能直接输入该页面来访问。来路是可以伪造的...所以你最好把你的需求重新设计一下
    我不会让人知道什么来路可以访问的。
    那要如何写啊。老大除非你的地址只有自己在访问 要不然不可能别人不知道的
    方法 changjay 已经写了吧 加工一下就好了
      

  6.   

    $reference = parse_url( $_SERVER['HTTP_REFERER'] );
    if ( stristr( $reference['host'], 'baidu.' ) ){
        //来自于百度,运行你的代码
    }else{
        //非百度来源,运行其他
    }
      

  7.   

    我希望,只能从指定的域名来路来访问该页面。直接输入和其他域名来路不能访问或者跳转。
    比如指定www.baidu.com 这个域名来的可以访问www.123.com 。其他域名来的就跳转首页。也不能直接输入该页面来访问。
    可指定多个来路。