求高手帮忙看下,关于截取url然后转换的问题
我下载一套免费程序,装在虚拟空间里边,点击链接是可以截取url后 通过程序转到爱淘宝推广页面。但是刚买了vps ,PHP装好,把程序也弄好后,点击链接后 到不到 爱淘宝推广页面,直接转到淘宝页面了。应该是截取url后 没成功转出去,不知道是不是服务器配置问题,请高手帮忙给看看啊。程序 装了好几遍了,程序是无问题的,现在问题是vps 上的,不知道哪里的问题啊,求助 是不是某个PHP参数没开启啊?截取url转换 代码// 全局配置结束
//include($config['global']['inc_dir'] . 'conf.db.php');
include($config['global']['inc_dir'] . 'class.db.php');
include($config['global']['inc_dir'] . 'class.controller.php');
include($config['global']['inc_dir'] . 'func.generic.php'); 
include($config['global']['inc_dir'] . 'class.tuiha.php');
include($config['global']['inc_dir'] . 'conf.inc.php');
//获取基础配置信息
getDefineInfo();
// 截取URI
$_SERVER['REQUEST_URI']= urldecode($_GET['patch']); 
$_SERVER['REQUEST_URI']= str_replace("/dispatcher.php","",$_SERVER['REQUEST_URI']);
$uri = isset($_SERVER['REQUEST_URI']) ? explode('?', $_SERVER['REQUEST_URI']) : null;
$uri = isset($uri[0]) ? explode('/', $uri[0]) : null;
 
// 取出URI PATH_INF中的controller和action名称
$controller = isset($uri[1])  && !is_numeric($uri[1]) && ctype_alnum($uri[1]) ? $uri[1] : $config['global']['default_controller'];
$action = isset($uri[2]) ? $uri[2] : $config['global']['default_action'];
 
// 验证controller是否存在
if (!file_exists($config['global']['controller_dir'] . $controller . '.php'))
{   
 header("location:http://".$config['global']['domain_name']);
 return;

// 载入控制器类
include($config['global']['controller_dir'] . $controller . '.php');  
// 实例化控制器,然后转发方法调用
$controller_class_name = ucfirst($controller);
$_obj = new $controller_class_name;if (method_exists($_obj, $action))
{
call_user_func(array(&$_obj, $action));
}
else
{
call_user_func(array(&$_obj, $config['global']['default_action']));
}

解决方案 »

  1.   

    这段代码似乎只是你的自定义框架的入口部分,也就是路由分发部分。
    并没有看到跳转到外站的部分。
    除非是:header("location:http://".$config['global']['domain_name']); 这个。
      

  2.   

    找到了 是由另一个文件跳转的,文件jump.php代码为<?php  
    class jump extends Controller {  
    public function index()
    {  
     $this->loadView("tk");
    }
    function settkurl()
    {
    $id = $_POST['id'];
    $url = $_POST['url'];
    if(empty($id)||empty($url))return;
    $sql = "replace into ".DBNAME."tuiha_item_tkurl (itemid,url,nick) values (?,?,?)";
    Db::execute($sql,array($id,$url,""));
    }     
    }
     ?>现在很奇怪,虚拟空间中
    http://www.feichangzhekou.com/index.php?patch=/jump&u=http%3A%2F%2Fitem.taobao.com%2Fitem.htm%3Fid%3D37476740974    
    可以正常跳转VPS中:http://005.feichangzhekou.com/index.php?patch=/jump&u=http%3A%2F%2Fitem.taobao.com%2Fitem.htm%3Fid%3D37476740974
    不可以正常跳转,我做了测试
    <?PHP
    echo urldecode('http%3A%2F%2Fi.ifeng.com%2Fnews%2Fzhuanti%2F2012nd%2F2012ndi%3F%26mid%3DMezRd%26vt%3D2');
    ?>这样也能正常是输出啊。求帮助啊,为啥 VPS上不能正常跳转