ホームページ >バックエンド開発 >PHPチュートリアル >セッション失敗の理由と損失の解決策の概要、セッションの概要_PHP チュートリアル

セッション失敗の理由と損失の解決策の概要、セッションの概要_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-12 09:07:52749ブラウズ

セッションが失われた原因と解決策のまとめ、セッションの概要

昨日GTSCに面接に行ったのですが、面接官にセッションが失われた後の確認方法を聞かれました正直、滅多に遭遇したことがありません。これまでの開発でこのような状況があった場合、思い浮かぶのはセッションのタイムアウトだけで、もう 1 つはセッションの読み取りと書き込みのログを実行することですが、これを聞いた面接官はあまり満足していないことがわかりました。汗!

いずれにせよ、今日は時間をかけてこれらの問題に対処する方法をインターネットで調べてまとめましたので、皆さんのお役に立てれば幸いです。

ところで、ASPのセッションの動作原理は次のとおりです:

asp のセッションはプロセスに依存します。 ASP セッション状態は、IIS プロセス (inetinfo.exe プログラム) に保存されます。したがって、inetinfo.exe プロセスがクラッシュすると、この情報は失われます。さらに、IIS サービスを再起動または終了すると、情報が失われる可能性があります。

asp.netセッションの実装

asp.net のセッションは HttpModule テクノロジーに基づいており、HttpModule はリクエストが処理される前にリクエストのステータスを制御できるため、HttpModule をセッションとして使用するのが最適です。

理由 1:

bin ディレクトリ内のファイルは書き換えられます。ASP.NET には、DLL の再コンパイル後にシステムが正常に実行されるようにするためのメカニズムがあります。これにより、セッションが失われます。 bin ディレクトリにアクセス データベースが存在するか、他のファイルがシステムによって上書きされ、セッションが失われます

理由 2:

フォルダーオプションで、「フォルダーウィンドウを別のプロセスで開く」がオンになっていない場合、新しいウィンドウが作成されると、システムはそれが新しいセッションであると認識し、元のセッションにアクセスできなくなる可能性があるため、オンにする必要がありますこのオプションを使用しない場合、セッションが失われます

参考構成:

http://jingyan.baidu.com/article/22fe7ced78594f3002617f04.html

理由 3:

セッション損失のほとんどはクライアントが原因であると思われるため、クライアントから開始してCookieがオンになっているかどうかを確認してください

理由 4:

セッションの時間設定に問題があるのでタイムアウトで失われてしまうのでしょうか?

理由 5:

IE の Cookie 数の制限 (ドメインごとに 20 Cookie) により、セッションが失われる可能性があります

理由 6:

Web ガーデン モードを使用し、セッションを保存する方法として InProc モードを使用します

失われた経験の解決策

1. 理由 1 が原因かどうかを判断するには、ページを更新するたびにビン内のファイルの変更時間を追跡できます


2. セッションの読み取りと書き込みのログを作成し、セッション ID、セッション値、ページ、現在の関数、および関数内の

番目の番号を記録する必要があります。

セッション操作を数回行うだけで、損失の原因を簡単に見つけることができます


3. セッションが失われにくいように、許可されている場合は、状態サーバーまたは SQL サーバーを使用することをお勧めします。


4. セッションの作成時刻と終了時刻を記録するコードを global.asa に追加します。タイムアウトによるセッションの損失は、SessionEnd に記録できます。


5. セッションのステータスを維持するために JavaScript などの一部のコードでクライアント スクリプトが使用されている場合は、スクリプトのデバッグを試みて、スクリプト エラーによってセッションが失われたかどうかを確認する必要があります

上記の内容は、Bangkejia の編集者が共有したセッション失敗のいくつかの理由であり、皆様のお役に立てれば幸いです。

http://www.bkjia.com/PHPjc/1058160.html

tru​​ehttp://www.bkjia.com/PHPjc/1058160.html技術記事セッションが失敗する原因とセッションが失われた場合の解決策のまとめ 昨日、GTSC に面接に行きました。正直に言うと、セッションが失われた後の確認方法について尋ねられました。 ..
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。