2010-08-19 14 views
0

(使用CakePHP)我期待建立的用戶創建一個子域名,更改密碼和信用卡信息...爭奪中:如何跨子域使用CakePHP Auth組件?

secure.mydomain.com(HTTPS) - 用戶/創建 - 用戶/登錄 - 用戶/ UpdateCreditCardInfo

app.mydomain.com(HTTP) - 一旦在使用「安全」的網站登錄,用戶將能夠訪問應用程序的具體意見

使用兩個子域上的CakePHP Auth組件...當用戶aut時,如何保持登錄信息對「安全」進行身份驗證然後重定向到「應用」子域?

回答

3

參見:http://book.cakephp.org/view/173/Sessions

提供一個自定義的配置,設置Session.save配置到一個文件名。 CakePHP將在CONFIGS目錄中使用您的文件進行設置。

Configure::write('Session.save','my_session'); 

這將允許您自定義會話處理。

// Cookie path is now '/' even if you app is within a sub 
// directory on the domain 
$this->path = '/'; 
ini_set('session.cookie_path', $this->path); 

// Session cookie now persists across all subdomains 
ini_set('session.cookie_domain', env('HTTP_BASE')); 
0

這是Cookie的一般問題。它們只在其設置的域及其子域內有效。 app.example.com不是secure.example.com的子域,所以你不能在它們之間轉換cookie。

可以example.com設置cookie,使之適用於所有的子域,包括app.secure.。然後,您可以修改這些子域上的Cookie。