有这样一个问题,希望得到大家的帮助:我在Apache中对某一个目录设置了 redirect url ..意思是当用户访问这个目录中的文件进行跳转到指定的URL中,那么现在我假定这个URL对应一个PHP 文件,那么我如何能在PHP文件中得到跳转前的URL呢?举例来说,用户在浏览器中输入:http://localhost/test/a.html 那么跳转到http://localhost/redirect.php 如何在redirect.php中得到他之前的页面是test/a.html.  因为我要在php中做某种检查如果通过则继续访问原来的页面否则错误页面。
等待各位的答复。。

解决方案 »

  1.   

    php获得不到原先的页面URL,不过我觉得不用知道原URL也差不多能实现你的效果
    if(true){
      echo '<script language="javascript">history.go(-1)</script>';
    }else{
      echo '<script language="javascript">location.href="error.php"</script>';
    }
      

  2.   

    $_SERVER['REDIRECT_URL']
    $_SERVER['REQUEST_URI']
      

  3.   

    我在我机子上试过。都不行。
    如果是用<a href='redirect.php'></a>是可以在redirect.php中用$_SERVER['HTTP_REFERER']得到跳转前的URL
    如果是用JS来location.href='redirect.php'用$_SERVER['HTTP_REFERER']也得不到。你的这二个也不行。只有$_SERVER['REQUEST_URI']能得到当前页面的文件redirect.php 也不是跳转前的URL
      

  4.   


    你的http://localhost/test/a.html转到的不是http://localhost/redirect.php?
    而是a.html转到某个php页面,然后这个php页面再转到redirect.php?
    然后你想在redirect.php得到a.html?