6

セッション ID を保持する PHPSESSID 変数がクライアント Cookie に保存されていません。これにより、関数を呼び出すたびに新しいセッション ID が生成されsession_start()ます。

これは、FireFox、Opera、および Chrome を使用している場合に当てはまります。サファリでは、何らかの理由で、この変数が Cookie に正常に保存され、すべて正常に動作します。

編集:これが私のセッション設定phpinfo()です:

phpinfo によるセッション設定

私の Web サイトにはサブドメインがあり、すべてのサブドメインで同じセッションを使用したいと考えています。

2番目の編集:メインドメイン をチェックするvar_dump($_COOKIE);と、名前の下にセッションIDが表示PHPSESSIDされますが、サブドメインでそれを行うと空のarray().

4

3 に答える 3

3

Cookie のドメインが に設定されているようlocalhostです。これは、実際に から Web サイトを実行している場合にのみ機能しますlocalhost。サブドメインも含めるにはsession.cookie_domain、ドメイン名と一致させる必要があります。必要に応じて、その.前に を付けます ( のように)。.example.com

于 2012-04-22T02:05:28.077 に答える