php 做的一个下项目,登录后页面跳转到首页,在本地的windows 环境是正常的,上传到linux服务器上就跳转不了。求解答。  
 代码,项目结构如下:
action/loginin.php  
  //user loginif (isset($_post['username']) && isset($_post['password'])		&& !empty($_post['username']) && !empty($_post['password'])) {	try{	$username = $_post['username'];	$password = $_post['password'];	$rs = $config[daoimpl]->getloginbyname($username);	$arr = mysql_fetch_array($rs);	//echo $arr['sys_user_passwd'];	if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {		$_session[sessionuser] = $username;		echo '';//跳转到根目录下的index.php	}else {		echo ;		exit(0);	}	}	catch (exception $e){		echo ;		exit(0);	}}
另外服务器是 操作系统:ubuntu 12.04 64位
回复讨论(解决方案)   跳转不了的表现是什么呢?网页不存在?还是脚本没反应? 
   1、你的传统代码不会抛出异常,所以你的异常处理是无效的,可以删去。或许就是他的原因  
 2、url 跳转宜使用绝对路径  
 location=/index.php 
      跳转不了的表现是什么呢?网页不存在?还是脚本没反应?
js 脚本没反应。
在登录成功代码里加了一个alert   
 if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {  
 $_session[sessionuser] = $username;  
 echo '';  
 echo '';  
 }else {  
 echo ;  
 exit(0);  
 }
效果是:
点击确认后,重新回到登录界面了 
   文件名大小写一致么?windows默认是不区分大小写的,linux是区分大小写的。另外,你直接访问那个php,看是否能访问?  
 或者,你些一个静态的html文件,放到 loginin.php 相同位置,把 loginin.php里面的js拷贝进去测试,看能否正常跳转?
重新回到登录界面 不一定是你没有跳转到index.php,有可能是你的session没有注册成功,到index.php又转到login.php了。 
   你在index.php最前面放置一些输出信息,看是否有访问过index.php 
   ?log看看程序走到哪?,再?定。  
  //user loginif (isset($_post['username']) && isset($_post['password'])        && !empty($_post['username']) && !empty($_post['password'])) {    echo '1';    try{    $username = $_post['username'];    $password = $_post['password'];    $rs = $config[daoimpl]->getloginbyname($username);    $arr = mysql_fetch_array($rs);    //echo $arr['sys_user_passwd'];    echo '2';    if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {        $_session[sessionuser] = $username;        echo '3';        echo '';//跳转到根目录下的index.php    }else {        echo '4';        echo ;        exit(0);    }    }    catch (exception $e){        echo '5';        echo ;        exit(0);    }}
1、你的传统代码不会抛出异常,所以你的异常处理是无效的,可以删去。或许就是他的原因   
 2、url 跳转宜使用绝对路径   
 location=/index.php
根据你的意见,我把代码做了修改,但还是不能跳转,登录成功后返回到了登录界面
if (isset($_post['username']) && isset($_post['password'])  
 && !empty($_post['username']) && !empty($_post['password'])  
 ) {  
 //try{  
 $username = $_post['username'];  
 $password = $_post['password'];  
 $rs = $config[daoimpl]->getloginbyname($username);  
 $arr = mysql_fetch_array($rs);  
 //echo $arr['sys_user_passwd'];  
 if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {  
 $_session[sessionuser] = $username;  
 echo '';  
 echo '';  
 }else {  
 echo ;  
 //exit(0);  
 }  
 //}  
 //catch (exception $e){  
 //echo ;  
 //exit(0);  
 //}  
 } 
   有可能是你的session没有注册成功,到index.php页面之后,判断没有登录,又往登录界面跳转了。你先屏蔽index.php的跳转功能试试看。 
      ?log看看程序走到哪?,再?定。   
   //user loginif (isset($_post['username']) && isset($_post['password'])        && !empty($_post['username']) && !empty($_post['password'])) {    echo '1';    try{    $username = $_post['username'];    $password = $_post['password'];    $rs = $config[daoimpl]->getloginbyname($username);    $arr = mysql_fetch_array($rs);    //echo $arr['sys_user_passwd'];    echo '2';    if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {        $_session[sessionuser] = $username;        echo '3';        echo '';//跳转到根目录下的index.php    }else {        echo '4';        echo ;        exit(0);    }    }    catch (exception $e){        echo '5';        echo ;        exit(0);    }}
已经运行到登录成功代码处,3楼有贴运行现象 
   if (isset($_post['username']) && isset($_post['password']) && !empty($_post['username']) && !empty($_post['password'])) {  $username = $_post['username'];  $password = $_post['password'];  $rs = $config[daoimpl]->getloginbyname($username);  $arr = mysql_fetch_array($rs);  if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {    $_session[sessionuser] = $username;    echo '';    echo '';  }else {    echo ;  }}
如果登录成功,会弹出“验证成功”对话框,你有吗? 
      有可能是你的session没有注册成功,到index.php页面之后,判断没有登录,又往登录界面跳转了。你先屏蔽index.php的跳转功能试试看。
session已经设置成功,屏蔽掉index.php的跳转后,程序就停在了logininphp 
      if (isset($_post['username']) && isset($_post['password']) && !empty($_post['username']) && !empty($_post['password'])) {  $username = $_post['username'];  $password = $_post['password'];  $rs = $config[daoimpl]->getloginbyname($username);  $arr = mysql_fetch_array($rs);  if ($arr && $arr['sys_user_passwd'] == generateuserpassword($password)) {    $_session[sessionuser] = $username;    echo '';    echo '';  }else {    echo ;  }}
如果登录成功,会弹出“验证成功”对话框,你有吗?  
 有,3楼的图就是登录后,弹出对话框的截图
有可能是你的session没有注册成功,到index.php页面之后,判断没有登录,又往登录界面跳转了。你先屏蔽index.php的跳转功能试试看。
session已经设置成功,屏蔽掉index.php的跳转后,程序就停在了logininphp
从你贴出来的loginin.php代码和运行情况来看,是不可能往 录界面跳转 跳转的,对吧? 屏蔽掉index.php的跳转后,程序就不再往登录界面跳转,这也就说明了一些问题。
你再在index.php最前面输出一些信息,看看情况如何?    那就是你没有 session_start() 了 
   ?出session看看有什西? 
   问题初步判断确实是出在我session 检查的代码里,谢谢大家帮忙分析!
   
 
   