somemo programming etc.

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【php】セッションIDの自動付加

携帯対応サイトで急にセッションからデータが取れなくなったときがあったのでメモ。

 

「セッションの自動付加について」

php.iniの「session.use_trans_sid」の値が1である場合、 相対URI指定している  リンクのhref属性の末尾に?PHPSESSID=~~  フォームの子要素に以下のinput要素が追加される   <input type="hidden" name="PHPSESSID" value="~~"> ⇒http://jp.php.net/manual/ja/session.configuration.php#ini.session.use-trans-sid

 

「なぜ急にデータが取れなくなったのか」

⇒結果から説明すると、相対URI指定していなかったから。 相対URI指定をしていなかった理由は、httpsにする必要があったためです。 そのため、セッションIDを渡さないようになり、データの取得ができなくなりました。 PCでは問題なく動作しますし、cookie使えるので自動付加されませんでした。

 

自動付加はいいと思うんですが、 ・セッションIDの暗号化をきちんとすること ・デフォルトのセッション名を変更すること ⇒http://jp.php.net/manual/ja/session.configuration.php#ini.session.name などをして対処したいですね。

 

おまけ php.ini ディレクティブのリスト