質問: 前提 -- phpによるウェブサービスを作成しています。 1. index.php 2. update.php 3. login.php というファイルがあり、 いずれもSSL認証されています。 login.phpで、$_SESSION['username']という名前で、セッション変数を保存しています。 困ったこと ----- テスト環境でSSL認証無しで作成していた際は、 login.phpで保存したセッション変数を、index.php, update.phpで取り出すことができていました。 ところが、SSL認証をするとindex.phpでは取り出せたのですが、 update.phpからは取り出すことができなくなってしまいました。 色々と調べてみましたが、同じような問題は見つけることができず、 原因も見当がつきません。 必要であれば、気になる部分のコードを記載しますので、 ご意見いただけないでしょうか。 漠然とした質問で申し訳ありませんが、よろしくお願いいたします。
回答: 本当に質問通りの環境であれば,信じがたい内容ですね... 確認すべきと言えることは * 各ファイルの先頭ですべて`session_start`を行っているか * 本当にすべてのアクセスでスキームが `https://` に統一されているか → もし統一されていない場合,セッション用Cookieの**secure属性**は有効になっていないか これぐらいしか思いつきません...差し支えなければソースを提示してください.