不是呀 链接地址都是对的啊  程序上是分析链接地址 就是栏目别名来查找数据的,后台都是有数据的 前台链接也是对的,只是怎么都回到首页去了啊而且在本地都是对的,上线就不行了。版主帮我看看为什么啊http://tibetcloud9.com

解决方案 »

  1.   

    thinkphp做的  但是好像开发的时候是他自己写了一个函数来解析地址的
    /**
     * 分析当前的访问地址,查找出对应的栏目以及控制器
     * @param
     */
    function parse_module () {
    $var_module = C('VAR_MODULE');
    $var_action = C('VAR_ACTION');
    //去掉  "/xxx/index.php/"
    $php_self = safe_replace($_SERVER['PHP_SELF']);
    $query_script = substr($php_self,strlen(__ROOT__) + 11);
    //修改时间 2011-11-1  ,用于url带参数效果。
    //$query_script = substr($_SERVER['REQUEST_URI'],strlen(__ROOT__)+1); $query_script = str_replace('//','/',$query_script);
    $url_suffix = C('URL_HTML_SUFFIX');
    if (!empty($query_script) && $query_script!=('index'.$url_suffix) ) {
    if (strpos($query_script,'/')) {  //分析url取得栏目文件夹名称,根据文件夹文件查找所属分类
    $param = explode('/',$query_script);
    } else {
    $param[0] = $query_script;
    }
    array_remove_empty($param);
    $_category = D ('Category');
    //$param[0] 为栏目文件夹名称
    if (substr($param[0],-strlen($url_suffix)) == $url_suffix) {  //根据$param查找栏目ID(单页)
    //检查 $param[0]中是否有分页分隔符 "_",如果有,则去掉分页数字以及前面的 '_' ,得到栏目的正确url
    if (strpos($param[0],'_')) {
    $page_param = explode('_',$param[0]);
    $page = str_replace($url_suffix,'',array_pop($page_param));
    if (is_numeric($page) && $page>0) {
    $caturl = str_replace('_'.$page,'',$param[0]);
    }
    } else {
    $caturl = &$param[0];
    }
    $category_data = $_category->field("`catid`")->where("`url`='{$caturl}' AND `type`<>'link'")->find();
    $param = '';
    $request_file = $query_script; //请求的文件地址
    } else {  //根据catdir查找栏目ID
    $category_data = $_category->field("`catid`")->where("`catdir`='{$param[0]}'")->find();
    array_shift($param);
    if (strpos($query_script,$url_suffix)) {
    if (__ROOT__ == '') { //根目录
    $request_file = substr($_SERVER['REQUEST_URI'] ,1);  //请求的文件地址
    } else {  //非根目录
    $request_file = substr($_SERVER['REQUEST_URI'],strlen(__ROOT__)+1);  //请求的文件地址
    }
    } else {
    $request_file = rtrim(substr($_SERVER['REQUEST_URI'],strlen(__ROOT__)+1),'/'). '/index' . $url_suffix;  //请求的文件地址
    }
    }
    define('CATID',$category_data['catid'] ? $category_data['catid'] : 0);
    $category_data = F ('category_'.$category_data['catid']);
    if ($category_data['controller']) {
    $_POST[$var_module] = $category_data['controller'];
    $_GET[$var_module] = $category_data['controller'];
    } else {  //栏目不存在,载入路由设置进行分析
    Dispatcher::dispatch();
    }
    C('CREATE_HTML',(boolean)$category_data['ishtml']);
    } else {
    $_POST[$var_module] = 'Findex';
    $_GET[$var_module] = 'Findex';
    $request_file = 'index' . $url_suffix; //请求的文件地址 ,首页
    }
    $request_file = str_replace('//','/',$request_file);
    define('REQUEST_FILE',$request_file);
    return ;
    }
      

  2.   

    你是不是用了伪静态,而服务器没启动重写?print_r(get_headers('http://tibetcloud9.com/sxcp'));
    Array
    (
        [0] => HTTP/1.1 403 Forbidden
        [1] => Date: Sat, 05 Jul 2014 09:39:05 GMT
        [2] => Server: Apache/2.2.15 (CentOS)
        [3] => Content-Length: 287
        [4] => Connection: close
        [5] => Content-Type: text/html; charset=iso-8859-1
    )
      

  3.   


    咦这个好像不知道哦。因为这是公司客户的网站  - - 他们自己买的服务器,那我叫跟单的同事问问。我现在是在公司套模板网站,后台是公司以前开发的。哎,什么时候才能成为牛逼的PHP主程序呢 - -。
      

  4.   


    但是没有开启rewrite怎么能用http://tibetcloud9.com/访问到首页啊,index.php被隐藏了?
      

  5.   

    默认文件名本身就是可缺省的
    你先把URL模式改为“普通模式”另外你的这个空间是否为“云空间”?
      

  6.   

    我改了 'URL_MODEL' => 0   ,没有什么变化,这个空间是客户买的香港那边的,不清楚云空间的概念
      

  7.   

    检查htaccess,或者把那个.htaccess文件删了试试