こんばんは。お世話になっております。
以前、セッションハイジャックを防ぐ方法として、
session_regenerate_id();
を用いて、ファイル(?)を次々と変えていけば良いと、いくつかのサイトで読んだ事があり、現在開発中のスクリプトにも盛り込んでいるのですが、これだと(windowsでいうtmpフォルダ内の)ファイルが膨大な量になってしまう事に気が付きました。
こういった状況はセッションハイジャックを防ぐ方法として仕方のない事なのでしょうか?それともファイルを削除するスクリプトもあるのでしょうか?
ネットで検索をして調べてはいるものの、調べ方が悪いのか、セッションハイジャックの対処法は紹介されているものの(とは言っても、上記だけしか把握してませんが…)、その後の対処に関しての紹介が見つからなかったもので・・・
お忙しい中恐縮ですが、アドバイスなどいただけたら幸いに思います。
No.1ベストアンサー
- 回答日時:
参考URLをご参照ください。
以下のようなコードを用いることで、古いセッションを破棄し、セッションに結び付けられたテンポラリファイルを削除した上で、新たなセッションを開始できるようです。
#セッション変数の内容を保持する必要がない場合は、$tmp = $_SESSION;$_SESSION = $tmp;は不要です。
--------
session_start();
$tmp = $_SESSION;
session_destroy();
session_id(md5(uniqid(rand(), true)));
session_start();
$_SESSION = $tmp;
--------
参考URL:http://tdiary.ishinao.net/20060825.html#p02
この回答への補足
erupi1973様
こんばんは。教えていただいたサイトですが、非常に分かりやすく、無事解決する事が出来ました。
これまで、session_regenerate_id();を通過するごとにファイルが蓄積してしまっていたので、コードを変えたことで、ファイル名が変わっていく様に、「これだよ!」なんて思いながら動作確認をさせて頂きました(笑)。
貴重なアドバイスを有難う御座いました。
erupi1973様
はじめまして、こんばんは。
ご親切なご回答を有難う御座います。
これからお教えいただいたサイト、ならびにコードを試してみたいと思います。
取り急ぎ、お礼としてご挨拶させて頂きますが、改めてご報告させて頂きます。有難う御座いました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 explorerをedgeで開く方法 2 2022/06/05 14:59
- Excel(エクセル) エクセルのファイルにリンクを貼る方法 4 2023/06/30 11:09
- UNIX・Linux shellscript内のコマンドを、sudo(toor)として実行 2 2022/09/23 15:05
- YouTube ユーチューブへの動画投稿にサムネイルを付ける方法は? 1 2022/07/21 23:45
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- グループウェア 一太郎がイントラで開けません。対処方法を知りたいです。 3 2023/04/04 13:30
- その他(ソフトウェア) 一太郎付属の”全件検索”ツールの不具合 3 2023/07/25 15:03
- iOS LENOVOのCD/DVDドライブが認識しない 2 2022/06/01 09:26
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Windows Vista・XP windows10 フォルダを上書きするときに、元のフォルダを全て削除してコピーする方法 3 2022/05/22 00:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
URLのパラメータをGETのままで...
-
!issetの冒頭の!ビックリマー...
-
POSTで情報を他のサーバーに渡...
-
sessionとcookieの設定内容の区別
-
二人でWEBアプリを動かしている...
-
COOKIEを用いたセッション管理
-
セッションのワンタイムチケッ...
-
セッション変数にパスワードを...
-
セッションが正しく更新されな...
-
リアルタイムカウンター
-
301リダイレクトはセッション引...
-
Sessionの上限について
-
セッション管理を携帯用とPC用
-
完全なセッション破棄をしたい
-
ブラウザを閉じた後もセッショ...
-
Dosブロンプトでtabを出力したい
-
wordの差し込み印刷で文字...
-
DTOとEntityの差は何ですか。
-
switch()文で値の大小比較
-
「取得先」という表現について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
URLのパラメータをGETのままで...
-
PHPのセッション有効期限について
-
PHPのセッションについて
-
ブラウザを閉じた後もセッショ...
-
Sessionの上限について
-
$_SESSIONと、POSTやGETの違い
-
ログインしたら他からログイン...
-
複数のサーバで運営する場合の...
-
セッションのスコープ(有効範...
-
301リダイレクトはセッション引...
-
「戻る」ボタンで値の保持
-
セッション ID とセッション名...
-
ログイン画面をはさんだ後、自...
-
session_start()で生成されるセ...
-
管理者としてログイン
-
PHP cookieの値が更新されない...
-
セッションを維持したまま、サ...
-
セッション変数にパスワードを...
-
セッションが正しく更新されな...
-
POSTで情報を他のサーバーに渡...
おすすめ情報