0

私は 2 日前、PHP セッションに関して非常に厄介な問題に遭遇しました。関数は、既存のセッションを再開するのではなく、新しいセッションを開始します。これはリロード時にも発生します。

私のphp.iniのセッションセクションは次のようになります。

Session Support     enabled
Registered save handlers    files user
Registered serializer handlers  php php_binary wddx 

session.auto_start  Off Off
session.bug_compat_42   Off Off
session.bug_compat_warn Off Off
session.cache_expire    180 180
session.cache_limiter   no value    no value
session.cookie_domain   no value    no value
session.cookie_httponly Off Off
session.cookie_lifetime 0   0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  1000    1000
session.gc_maxlifetime  1440    1440
session.gc_probability  0   0
session.hash_bits_per_character 5   5
session.hash_function   0   0
session.name    PHPSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    files   files
session.save_path   /tmp    /tmp
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    On  On
session.use_trans_sid   1   1

私は Ubuntu サーバーを実行しており、www-data ユーザーは /tmp フォルダーに対する書き込み権限と読み取り権限を持っています。セッション ファイルは存在しますが、何らかの理由で新しいファイルを開始することを選択します。

OS : Ubuntu 12.04 PHP バージョン : 5.3.1 ウェブサーバー : Apache 2.2

提案やアドバイス、そしてもちろん、お時間をいただきありがとうございます。

[問題が解決しました]

問題は解決しました。Cookie ドメインを "example.com" (独自のドメインに置き換えます) に設定し、リダイレクト先を "www.exemple.com/bla" ではなく "exemple.com/bla/bla" にする必要がありました。 /bla".

4

2 に答える 2

0

おそらくクロムでhttpヘッダーを調べて、Cookieが存在することを確認できますか? 問題はあなただけにあるのではありませんか?

また、Cookie のドメイン名が正しく設定されていることも確認してください。ドメイン名などでファンキーなことをしていますか?

于 2013-05-15T17:04:01.630 に答える