2

CodeIgnighter サイトが本番サーバーにプッシュされると、セッション データが失われるという問題が発生しています。

人々がサイトをナビゲートしている間、セッションを使用して予約に関連するデータを保存する CodeIgnighter サイトがあります。私は 15 分以上ページを離れて戻ってきて、すべてが正常に機能することを非常にうれしく思います。

ただし、コードを本番サーバーにライブでプッシュすると、5 分後にセッションがタイムアウト/データを失ったように見えます。

CodeIgnighter 構成ファイルでデフォルトのセッション タイムアウトを設定しましたが、CodeIgnighter 設定を上書きする可能性のあるサーバー/php/Apache レベルがあるかどうか疑問に思っています。残念ながら、セッション処理に関する私の知識は十分ではなく、Google はこれまでのところ役に立ちませんでした!

phpinfo(); からのセッション情報を添付しました。作業現場と壊れた生産現場の両方から。

どんな助けでも大歓迎です!!

作業中の開発サイト:

    ディレクティブ ローカル値 マスター値
    session.auto_start オフ オフ
    session.bug_compat_42 オン オン
    session.bug_compat_warn オン オン
    session.cache_expire 180 180
    session.cache_limiter nocache nocache
    session.cookie_domain 値なし 値なし
    session.cookie_httponly オフ オフ
    session.cookie_lifetime 0 0
    session.cookie_path //
    session.cookie_secure オフ オフ
    session.entropy_file 値なし 値なし
    session.entropy_length 0 0
    session.gc_divisor 100 100
    session.gc_maxlifetime 1440 1440
    session.gc_probability 1 1
    session.hash_bits_per_character 4 4
    session.hash_function 0 0
    session.name PHPSESSID PHPSESSID
    session.referer_check 値なし 値なし
    session.save_handler ファイル ファイル
    session.save_path /tmp /tmp
    session.serialize_handler php php
    session.use_cookies オン オン
    session.use_only_cookies オン オン
    session.use_trans_sid 0 0

壊れた生産サイト:

    ディレクティブ ローカル値 マスター値
    session.auto_start オフ オフ
    session.bug_compat_42 オフ オフ
    session.bug_compat_warn オフ オフ
    session.cache_expire 180 180
    session.cache_limiter nocache nocache
    session.cookie_domain 値なし 値なし
    session.cookie_httponly オフ オフ
    session.cookie_lifetime 0 0
    session.cookie_path //
    session.cookie_secure オフ オフ
    session.entropy_file 値なし 値なし
    session.entropy_length 0 0
    session.gc_divisor 1000 1000
    session.gc_maxlifetime 1440 1440
    session.gc_probability 1 1
    session.hash_bits_per_character 5 5
    session.hash_function 0 0
    session.name PHPSESSID PHPSESSID
    session.referer_check 値なし 値なし
    session.save_handler ファイル ファイル
    session.save_path 値なし 値なし
    session.serialize_handler php php
    session.use_cookies オン オン
    session.use_only_cookies オン オン
    session.use_trans_sid 0 0

4

1 に答える 1

0

実際には、まったく別の解決策を提案し、セッションのハンドラーとしてデータベースを使用するように伝えます。複数のサーバーを持つことができ、セッションのセキュリティに最適であるため、データベースを使用することをお勧めします。

于 2013-02-24T10:26:41.510 に答える