function.phpの26~29行目に記載さ...
同じサーバーでsession.gc_maxlifetimeが短いサイトがあった場合、ドメインが違ったとしても、そのタイミングでセッションは削除されます。
他のサイトやページに影響を受けないようにするには、セッションファイルの保存先session.save_pathを変える必要があります。
※セッションはドメインを区別しないので、上記の場合などは両方の設定が必要になります。
②について
/var/tmpに保存先を変更しない(/tmpのままの)場合は10日、またはサーバ再起動時にセッションが削除されます。
なのでsession.gc_maxlifetimeだけ設定しても意味がありません。
上記理由から両方設定しています。
部活の学習一覧
Lesson 01
「WEBサービスと必要な機能」
Lesson 02
「画面を設計しよう!」
Lesson 03
「テーブルを設計しよう!part1」
Lesson 04
「テーブルを設計しよう!part2」
Lesson 05
「テーブルを設計しよう!part3」
Lesson 06
「DB作成」
Lesson 07
「画面を作ろう!」
Lesson 08
「画面を作ろう!part2」
Lesson 09
「ユーザー登録機能を作ろう!」
Lesson 10
「ユーザー登録機能を作ろう!part2」
コーヒーブレイク
「投資の小話」
Lesson 11
「ログイン機能を作ろう!」
Lesson 12
「ログアウト機能を作ろう!」
Lesson 13
「退会機能を作ろう!」
Lesson 14
「プロフィール編集機能を作ろう!」
コーヒーブレイク
「書いて書いて書きまくれ!」
Lesson 15
「パスワード変更機能を作ろう!」
Lesson 16
「パスワードリマインダー機能を作ろう!」
Lesson 17
「商品登録機能を作ろう!」
Lesson 18
「商品登録機能を作ろう!part2」
Lesson 19
「商品登録機能を作ろう!part3」
Lesson 20
「商品一覧表示機能を作ろう!」
Lesson 21
「商品詳細画面を作ろう!」
Lesson 22
「商品検索機能を作ろう!」
Lesson 23
「連絡掲示板機能を作ろう!」
Lesson 24
「お気に入り機能を作ろう!」
Lesson 25
「マイページ機能を作ろう!」
コーヒーブレイク
「はたらくプログラミング 第5話」
ご意見箱
function.phpの26~29行目に記載されているコードについて、下記2つの設定はどちらか一方の設定で十分なのではないか、と思いました。どちらも記載されている理由を検索して調べてみたのですが納得できるものがなかったので質問させていただきました。
//セッションファイルの置き場を変更する(/var/tmp/以下に置くと30日は削除されない)
session_save_path("/var/tmp/");
//ガーベージコレクションが削除するセッションの有効期限を設定(30日以上経っているものに対してだけ100分の1の確率で削除)
ini_set('session.gc_maxlifetime', 60*60*24*30);
そのように考えた理由
①session_save_pathを/var/tmpに変更することでセッションファイルが30日削除されないのであれば、session.gc_maxlifetimeでセッションの有効期限を30日に設定する必要はない
②session.gc_maxlifetimeでセッションの有効期限を30日に設定しているのであれば、わざわざ/var/tmpに保存先変更する必要はない
理解が間違っているところがあればご指摘ください。また、どちらも記載している明確な理由あれば教えていただきたいです。
よろしくお願い致します。