2014-02-18 63 views
0

我正與另一個通過iframe集成向其用戶顯示我的網站(mysite.com)內容的網站(abcxyz.com)合作。用戶登錄上abcxyz和不知道ABOT mysite.comiframe集成 - 在會話超時後將用戶重定向到父網站登錄頁面

EGS

所以一切工作正常爲止。現在,當會話在我的網站上過期時 - 用戶會自動重定向到iframe中的登錄頁面(mysite.com) - 所以他們想要重定向到他們的登錄頁面。

我正在使用Zend框架工作(PHP),這是我想我會解決這個問題。

在我Zend_Acl中類 - 在predispatch方法 - 我檢查指引者,如果它abyxyz匹配 - 我重定向到其登錄頁面其他礦山

if ($role == 'guest') 
    {    
     $referrer = $request->getHeader('referer'); 
     if (strpos($referrer,'abcxyz.com') !== false) { 
      $redirector = new Zend_Controller_Action_Helper_Redirector(); 
      $redirector->gotoUrl('abcxyz.com/login.htm'); 
     } 
     else { 
      $request->setControllerName('user'); 
      $request->setActionName('login'); 
     }    
    }   

這似乎並不奏效。它會將用戶重定向到我的登錄頁面本身。

有什麼問題,我在這裏做什麼或是否有更好的方法來處理這

請讓我知道

感謝

回答

0

referer頭是not very reliable。即使是這樣,如果用戶在瀏覽您的網站,很可能是引用者是您自己的網站。

我不知道如果javascript是一個選項,但在那裏你可以檢查當前頁面是否匹配父頁面,如果沒有(在你的情況下)重定向。因此,如果條件不符合,您必須使用重定向到其他登錄頁面的腳本來爲您的登錄頁面提供服務。

相關問題