私は2つのサブドメイン間でセッション変数を維持しようとしており、不可能であることがわかりました。私は「テスト1」と呼ぶ1がちょうど[サブドメイン間でセッション変数を維持する
$_SESSION['test'] = "Fred";
を設定し、単純に$ _SESSIONの値をエコーしようとすると「テスト2」へのハイパーリンクを持って、テストベッドとして2つの最小限のPHPのWebページを作成することになりました'テスト']それが働いていることを証明するかどうか。自分のwwwドメインに 'test 1'を、サブドメインに 'test 2'を配置します。私はさまざまなソースからヘッダーに入るべきものの様々なバージョンを試しています。ここでは、メイン3(そしてもちろんその変種)は以下のとおりです。
ini_set('session.cookie_domain',substr($_SERVER['SERVER_NAME'],strpos($_SERVER['SERVER_NAME'],"."),100));
session_start();
または
ini_set('session.cookie_domain','mydomain.com');
session_start();
または
ini_set('session.cookie_domain', PHP_INI_ALL);
session_start();
または
session_set_cookie_params(0, "/", ".mydomain.com", false);
session_start();
に私は私が得ることを見つけますすべての場合において同一の結果となる。セッションはサブドメインを横切って運ばれません。ページテスト2では、$ _SESSION ['test']をどのような値に設定するか分かりません。しかし、ネットの周りには、上記の方法の1つがうまくいくと確信があるようです。何が起こっているのでしょうか?特に、私はメカニズムをテストするために最小限のページを使用しています(私が見ることのできる副作用はありません)。ところで、私は共有サーバー上にいます、もしそれがここに当てはまるならば。
ありがとうございました。フランク
を編集します。 私はそれを修正しました。問題はSuhosinによって引き起こされた。このページの下にある詳細な解答を見てください。
「48時間の悪夢を追跡して、修正するのに4.8秒」 - スーパー。私はあなたの言う事が分かります :) – qasanov