0

毎日約 100 人のユーザーがウェブサイトにアクセスしています。その大多数はログインに問題はありません。ただし、月に 1 回、ログイン ページが更新されるだけで、エラー メッセージなどは表示されないという苦情の電話またはメール チケットが届きます。

すべてのエラー メッセージは PHP セッション Cookie を介して送信されます。もちろん、ログイン後のすべてのメッセージはそのセッションに基づいています。ページが更新されるだけだと思う​​唯一の理由は、ローカル マシンでそのセッション Cookie をブロックしているためです...

現在、ほとんどの場合、ユーザーは Internet Explorer を使用していますが、時折、Chrome や Firefox でも発生します。Safari、Chrome、FFを試した(OSX上の)ユーザーさえいましたが、ログインできず、基本的にページが更新されました。ユーザーにウェブサイトを信頼できるものとして追加してもらいましたが、それでもうまくいきません。

どのネットワークからも、どのブラウザー/コンピューターからも再現できないため、これは最悪です。

誰がこのようなことを引き起こしているのか知っていますか? サイトは SSL を強制しています (HTACCESS ファイルは HTTPS にリダイレクトされます)。サイトはセッション Cookie を HTTP のみとして強制し、Secure フラグも TRUE に設定されています (これら 2 つは最近の変更です)。

サーバーまたはPHPインスタンスの他の設定がこのような問題を引き起こしているのか、それともクライアント側の問題だけなのか(そうであるように見えます)はわかりません。クライアント側の場合は、問題とその解決策を学びたいと思います。

残念ながら、クライアントはそれを評価しないため、デバッグ用に Web サイトの URL を共有することはできません。ご協力いただきありがとうございます。できる限りの質問にお答えします。

4

2 に答える 2

0

ロード バランサーの背後に複数の Web サーバーがありますか? また、PHP セッションは各 Web サーバーにローカルに保存されていますか? その場合、ロード バランサーの仕事は、ユーザーが繰り返しアクセスする際に同じサーバーに戻り続けることを確認することです。何か問題が発生した場合、セッションを持たないサーバーに送信される可能性があります。ユーザーを間違ったサーバーに送信する断続的な不具合である可能性があります。

他の人が指摘したように、実際には十分な情報がないため、推測するだけです。

于 2013-02-01T22:08:20.933 に答える
0

セッション Cookie の名前は有効ですか? 過去にこの問題に遭遇したことがあります。ブラウザによっては、名前が無効な場合にセッション Cookie を受け入れませんが、他のブラウザでは受け入れます。

http://php.net/manual/en/function.session-name.php

于 2013-02-01T23:50:20.727 に答える