2010-05-12 127 views
1

我目前正在開發一個應用程序(www.domain.se,.eu),我們遇到了不跨域傳播的會話問題。 Internet Explorer是其根本原因,因爲它會根據我們是在輸入「domain.se」還是「www.domain.se」來區分會話。由於一些不幸的重定向,我們無法將用戶保持在用戶輸入的相同地址,相反,我們總是通過登錄重定向到www.domain.se。不用說,輸入「domain.se」時IE用戶無法登錄。session_set_cookie_params在多個域名網站上

爲了使這個錯誤消失,我們實現了一個功能,試圖通過這樣設置會話在所有可能的領域是有效的下列內容:

if($_SERVER['HTTP_HOST'] == "domain.se") {
session_set_cookie_params(3600, '/', '.domain.se', true);
}

基本上有幾個如果:■我們通過取決於用戶輸入的地址,但第三個參數保持不變。

但是,這會導致無人能夠登錄,無論域如何。我試着讀了session_set_cookie_params()的工作方式,但無濟於事。

任何幫助,非常感謝!

回答

1

好吧,你有錯誤的參數。大拇指的規則是:不要觸摸你不知道的參數。 所以,只要它

session_set_cookie_params(0, '/', '.domain.se'); 

沒有任何條件。

+0

謝謝你,這個伎倆! – nillls 2010-05-12 21:29:00