網頁提示:
此網頁產生了過多的重新導向。清除此網站的 Cookie 或允許第三方 Cookie 可能會解決此問題。如果不能解決,可能是伺服器配置有問題,而不是您的電腦有問題。
一個網站,分為前台和後台,都需要各自的帳號密碼登入。
為了儲存登入狀態,我把登入資訊session存在cookie裡,設定cookie的到期時間無限長,如果session到期就從cookie中取出登入資訊進行驗證登入。
前台沒有任何問題,可以自動登入,後台在關閉瀏覽器session失效後再進入,提示:此網頁產生了過多的重新導向。清除此網站的 Cookie 或允許第三方 Cookie 可能會解決此問題。如果不能解決,可能是伺服器配置有問題,而不是您的電腦有問題。
前背景代碼基本是一樣的:
檢測session是否存在,session存在直接進入
session不存在,檢測cookie,通過cookie擷取登入資訊登入。資訊正確進入,資訊錯誤跳轉至登入介面。
session和cookie都不存在,跳轉至登入介面。
//驗證是否登入 public function _initialize(){ $session=session('uid'); $cookie=cookie('auto'); //session失效 cookie失效 if(!isset($session) AND !isset($cookie)){ $this->redirect('Login/login',array(),1,'請先登入'); exit; } //session失效 cookie有效 if(!isset($session) AND isset($cookie)){ //使用cookie登入 $AdminModel=D('Admin/Admin'); $result=$AdminModel->login($cookie); if($result>0){//登入成功 //判斷管理員身份 if($result==1){//超級管理員 $this->redirect("Task/task1"); exit; }elseif($result>1){//普通管理員 $this->redirect("Eat/displayEat"); exit; } } else {//登入失敗 cookie中的資訊不可用 $this->redirect('Login/login',array(),1,'登入資訊已改變,請重新登入'); exit; } }
回複內容:
網頁提示:此網頁產生了過多的重新導向。清除此網站的 Cookie 或允許第三方 Cookie 可能會解決此問題。如果不能解決,可能是伺服器配置有問題,而不是您的電腦有問題。
一個網站,分為前台和後台,都需要各自的帳號密碼登入。
為了儲存登入狀態,我把登入資訊session存在cookie裡,設定cookie的到期時間無限長,如果session到期就從cookie中取出登入資訊進行驗證登入。
前台沒有任何問題,可以自動登入,後台在關閉瀏覽器session失效後再進入,提示:此網頁產生了過多的重新導向。清除此網站的 Cookie 或允許第三方 Cookie 可能會解決此問題。如果不能解決,可能是伺服器配置有問題,而不是您的電腦有問題。
前背景代碼基本是一樣的:
檢測session是否存在,session存在直接進入
session不存在,檢測cookie,通過cookie擷取登入資訊登入。資訊正確進入,資訊錯誤跳轉至登入介面。
session和cookie都不存在,跳轉至登入介面。
//驗證是否登入 public function _initialize(){ $session=session('uid'); $cookie=cookie('auto'); //session失效 cookie失效 if(!isset($session) AND !isset($cookie)){ $this->redirect('Login/login',array(),1,'請先登入'); exit; } //session失效 cookie有效 if(!isset($session) AND isset($cookie)){ //使用cookie登入 $AdminModel=D('Admin/Admin'); $result=$AdminModel->login($cookie); if($result>0){//登入成功 //判斷管理員身份 if($result==1){//超級管理員 $this->redirect("Task/task1"); exit; }elseif($result>1){//普通管理員 $this->redirect("Eat/displayEat"); exit; } } else {//登入失敗 cookie中的資訊不可用 $this->redirect('Login/login',array(),1,'登入資訊已改變,請重新登入'); exit; } }
不知道你的Login/login
方法是否繼承了_initialize()
?如果繼承了,必然重新導向變成死迴圈!
重新導向問題,清除該網站cookie。