我試圖建立如下:PHP會議
auth.domain.com
sub1.domain.com
sub2.domain.com
其中,如果用戶訪問sub1.domain.com或sub2.domain.com,他們還沒有登錄,他們將被推轉到auth.domain.com並可以登錄。sub1.domain.com和sub2.domain.com是兩個單獨的應用程序,但使用相同的憑據。
我試着設置以下在我的php.ini:
session.cookie_domain = ".domain.com"
,但它似乎並沒有從一個領域到另一個傳遞信息。
[編輯]
我嘗試以下:
sub1.domain.com/test.php
session_set_cookie_params(0, '/', '.domain.com');
session_start();
print session_id() . "<br>";
$_SESSION['Regsitered'] = 1;
echo '<a href="http://auth.domain.com/test.php">Change Sites</a>'
auth.domain.com/test.php
session_set_cookie_params(0, '/', '.domain.com');
session_start();
print session_id() . "<br>";
$_SESSION['Checked'] = 1;
print_r($_SESSION);
會話ID完全相同,但是當我將$ _SESSI ON變量,它不顯示兩個鍵,就是我在每個域下設置的任何鍵。
[編輯2]
我更新[編輯]
我有幾乎相同的設置(我通過調用「session_set_cookie_params」設置會話cookie域),它工作正常。 – 2009-06-30 15:25:20
您必須在您的代碼中啓用它,請參閱[http://us2.php.net/manual/en/function.session-set-cookie-params.php](http://us2.php.net /manual/en/function.session-set-cookie-params.php) – Residuum 2009-06-30 15:18:58
這裏是不錯的功能,工程 http://stackoverflow.com/questions/2835486/php-session-shared-with-子域/ 17638102#17638102 – boksiora 2013-07-14 09:25:43