1

VPS(CentOs)を使用していて、サブドメインを持ついくつかのWebサイトを実行していますが、セッションファイルを監視したいのですが、サイトとそのサブドメインに個別のセッション保存パスを次のように定義できますか?

session_save_path("/home/sitename1/public_html/sessionpath/");
session_save_path("/home/sitename2/public_html/sessionpath/”);

サブドメインの場合

session_save_path("/home/sitename1/public_html/subdomainName1/sessionpath/"); 
session_save_path("/home/sitename2/public_html/subdomainName2/sessionpath/”);

INIのデフォルトパスはtmpで、これはルートディレクトリにあり、アクセスする権限がありません。私のサイトユーザーの中には、ページでアクティブであったとしてもセッションファイルを失う人がいます。理由は何でしょうか?tmpフォルダファイルをクリーニングするバックグラウンドプロセスはありますか?

PHPセッションメカニズム用のINIの他の設定は、session.gc_divisor 3000、session.gc_probability 1、session.gc_maxlifetime 10800、session.cookie_lifetime 0、

4

1 に答える 1

0

へのグローバル アクセスを禁止する Linux システム/tmpや、とにかくそれを行うシステム管理者については知りませんが、それは可能だと思います。

セッション ファイルは、に基づいてガベージ コレクションを取得しますgc_maxlifetime。あなたの場合、それは 180 分または 3 時間です。これは、非アクティブ状態が 3 時間続くと、特定のセッションがガベージ コレクションされる (つまり、削除される) 可能性があることを意味します。

セッションをそれよりも長く持続させたい場合は、別のレイヤー (データベースなど) が必要になるか、JavaScript などを使用してセッションを更新し続ける必要があります。

于 2012-10-04T08:29:55.710 に答える