أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

استكشاف الأخطاء وإصلاحها ASP.NET

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية891032
ASP .NET دعم الصوت عمود: ASP.NET استكشاف أخطاء
لتخصيص هذا العمود إلى احتياجاتك، نحن نريد دعوة بإرسال الأفكار حول المواضيع التي تهمك و الموجهة المشكلات التي تريد راجع مقالات قاعدة المعارف في المستقبل والأعمدة الصوت الدعم. يمكنك إرسال باستخدام نموذج Ask For It الأفكار والملاحظات. يوجد أيضاً ارتباط إلى النموذج في أسفل هذا العمود.
مقدمة حول
الترحيب مرة أخرى ثم الترحيب إلى إصدار نوفمبر ' أبريل من "عمود الصوت الدعم". أريد أن شكراً Cheshire محمود ، مهندس دعم هنا في Microsoft يدعم .NET ASP المساهمات الخاصة به. محمود الأفكار رائعة عمود "الصوت دعم" كما تريد مشاركتها. ابحث عن المساهمات الخاصة محمود عبر الأشهر القليلة التالية وقم دوماً إرسال إلينا الاقتراحات للأعمدة المستقبلية. محمود شكراً لك!

محمود قد تعمل مع Microsoft ست سنوات على الفرق FrontPage و VB ASP .NET. خلال هذا الوقت، يقوم كتابة لـ "مركز المطور Office" على MSDN وهو قام كاتب دفتر على FrontPage خاص Edition باستخدام Microsoft Office FrontPage 2003. لدى محمود أيضاً موقع ويب فهو يوفر الحرة الوظائف الإضافية لـ FrontPage لتمكين مطوري ويب لجعل أكثر من منتجات Microsoft. وفيما يلي عنوان موقع ويب هذا:لذا الرجاء السحب للأعلى كرسي ، استرخ shoes في إيقاف تشغيله، ثم قراءة العمود الخاص بنا كافة حول استكشاف أخطاء ASP.NET و تذكر يمكنك إرسال الأفكار لنا باستخدام الارتباط "FOR ASK تكنولوجيا" المضمنة في كل عمود نقوم نشر.

Jeremy
استكشاف الأخطاء وإصلاحها ASP.NET
قد يمكنك مشاهدة الفيلم Shrek نجمة الفيلم Shrek ، هو ogre creature أخضر ugly مع عادات awful hygiene. في الفيلم، Shrek proclaims تعقيد ogres بقول أن “ ogres تشبه onions. لديهم طبقات. ”

ASP.NET يشبه ogre بكثير. يحتوي على طبقات العديد من--عميل ويب أي جهاز وسيط مثل الملقمات الوكيلة الويب الملقم وشبكة موجود في وأنك يلامس التطبيق أية موارد أخرى. كافة الطبقات تلك جعل ASP.NET الصعوبة لاستكشاف إلا إذا كنت تعرف أي أداة استخدامه وكيف يتم استخدام هذه الأداة بشكل صحيح.

في risk من إجراء بنفسي قديمة ، هذه السلسلة سوف بتعليم لك كيفية استخدام بعض الأدوات نستخدم في PSS لحل المشاكل. سوف انتقل عبر كيفية استخدام بعض أدوات مميزاً فعلاً مثل:
  • مراقبة شبكة الاتصال
  • fiddler
  • Filemon / Regmon
  • أدوات التصحيح لـ Windows (Windbg)
  • SOS (ملحق Windbg للتصحيح تعليمات برمجية تمت إدارتها)
  • DBGClr
لن انتقل إلى تفاصيل intimate باستخدام هذه الأدوات ولكن توفر لك استقبالا أساس خالصة باستخدام هذه الأدوات بحيث يمكنك النفاذ إلى الأسفل إلى السبب العديد من المشكلات التي قد تواجهها.

المتشممون

سيتم التعامل الجزء الأول من سلسلة هذه مع المتشممون شبكة الاتصال. let’s dive اليمين في.

المشكلة المثال:

لديك أحد تطبيقات ASP.NET يستخدم مصادقة متكاملة Windows ولديه “ المجهول ” إيقاف تشغيل. أحد المستخدمين عن أن تكون غير قادراً على الوصول إلى الموقع. بدلاً من ذلك، بشكل متكرر يُطلب اسم المستخدم وكلمة المرور. كنت تعتقد أن صحة الأذونات هذا المستخدم.

يكون هذا النوع من المشكلة الترشيح السرية لاستكشاف الأخطاء وإصلاحها باستخدام متشمم شبكة اتصال. يسمح متشمم تحديد ما إذا كان العميل يقوم بإرسال معلومات المصادقة إلى الملقم. هو متشمم شبكة اتصال نستخدم في Microsoft "مراقبة الشبكة".

مراقبة شبكة الاتصال

يمكنك تنزيل إصدار "مراقب الشبكة" bombed الوقت من موقع FTP Microsoft التالية: كلمة المرور على هذا الملف البريدي التتبع. بعد تثبيت "مراقب الشبكة" تستطيع العثور عن طريق النقر فوق أدوات إدارية ثم انقر فوق أدوات تحليل الشبكة.
تحديد واجهة شبكة الاتصال لالتقاط
عند بدء تشغيل "مراقبة الشبكة" لأول مرة هو أول شيء يجب القيام بتحديد بطاقة شبكة الاتصال التي تريد استخدامها في مربع الحوار هو موضح في الشكل 1.
Figure 1: Choosing a network in Network		  Monitor
الشكل رقم 1: اختيار شبكة اتصال في "مراقبة الشبكة"

لاحظ أن في الشكل 1 الواجهة المحددة اتصال الطلب الهاتفي أو VPN المحول كما هو مشار إليه في الخصائص للواجهة. في معظم الحالات، ستحتاج إلى تحديد إحدى الواجهات غير الطلب الهاتفي أو اتصال VPN. اخترت استخدام لقطة VPN المحول لا ترغب في اختيار لأن أريده يمكنك مشاهدة كيفية ذلك هل يمكن تعريف بوضوح. مرة واحدة مرة أخرى في تقريباً كافة الحالات، المحول الذي تريد اختيار هو الذي لا يبدو 1 الشكل pictured في واحد.

إذا كنت بحاجة إلى تغيير بطاقة الشبكة يتم التقاط يمكنك الوصول إلى مربع الحوار للقيام بذلك عن طريق النقر فوق الخيار شبكات القائمة لقطة.
تعيين حجم المخزن المؤقت
مراقبة شبكة الاتصال على المخزن مؤقت التقاط افتراضي من 1 ميغا بايت. وهذا يعني أن بعد يجمعها 1 ميغا بايت من البيانات الشبكة ويبدأ للكتابة فوق للتتبع. في كثير من الحالات، قد تحتاج إلى زيادة هذا المخزن المؤقت. وللقيام بذلك، انقر فوق التقاط ثم انقر فوق إعدادات المخزن المؤقت. سيعرض مربع الحوار إعدادات المخزن المؤقت لقطة حيث يمكنك زيادة حجم المخزن المؤقت. يعتمد الحجم الذي تريد تحديد على مقدار حركة مرور الشبكة كنت تشاهد على شبكة الاتصال. لمشكلة حيث ترغب في إنشاء الإطارات التي تهمك فور بدء الالتقاط ، يجب أن يكون المخزن مؤقت 2 أو 3-ميغابايت أكثر من كافية.

سوف تلاحظ التي في لقطة إعدادات المخزن المؤقت مربع الحوار يمكنك أيضاً تغيير حجم الإطار. وهذا مفيد في الحالات حيث تريد التقاط الرؤوس التي يتم إرسالها. قبل تقليل حجم الإطار, يمكن حفظ بعض المساحة في المخزن المؤقت ثم استمرار التقاط رؤوس تحتاج. لن انتقل إلى التفاصيل باستخدام التي في هذه المقالة.
بدء الالتقاط
والآن حصولك على مجموعة المخزن المؤقت فإنك تكون مستعدًا لبدء تشغيل التقاط البيانات. يمكنك بدء تشغيل التقاط بعدة طرق مختلفة:
  • اضغط F10 على لوحة المفاتيح.
  • انقر فوق التقاط ثم انقر فوق ابدأ من القائمة.
  • انقر فوق الزر "بدء الالتقاط" على شريط الأدوات (هذا الزر يبدو زر قراءة).
كما يمكنك التقاط الحزم مع "مراقبة الشبكة" ستشاهد متر نقل والإحصائيات تغيير, كما هو موضح في الشكل 2. إذا كنت لا ترى أي شيء يحدث عندما يتم التقاط المحتمل أن تحتاج إلى تغيير بطاقة الشبكة يتم التقاط.
Figure 2: Network Monitor while capturing		  packets
الشكل رقم 2: مراقب شبكة الاتصال أثناء التقاط حزم

بعد أن تم بدء تشغيل الالتقاط في "مراقبة الشبكة" إعادة إنشاء المشكلة التي تحتاج إلى التقاط ثم إيقاف الالتقاط ثم بالنقر فوق الزر ' إيقاف ' في "مراقبة الشبكة" بالنقر فوق لقطة ومن ثم النقر فوق إيقاف ، أو بالضغط على F11 على لوحة المفاتيح. أنت الآن جاهز فحص البيانات التي تم التقاطها.

ملاحظة يلتقط مراقب شبكة الاتصال فقط على البيانات الانتقال عبر السلك. لذلك، عادةً لا يمكن التقاط طلب بالمقابلة مع تطبيق ويب الخاص بك عن طريق استعراض في وحدة التحكم. في بعض الحالات، استعراض باستخدام عنوان IP أو اسم المجال المؤهل بالكامل يسمح لك لالتقاط على الكمبيوتر المحلي.
فحص البيانات الملتقطة
بعد تم إيقاف الالتقاط ، يمكنك عرض البيانات الملتقطة بواسطة النقر فوق لقطة ثم النقر فوق عرض البيانات الملتقطة أو بضغط F12 على لوحة المفاتيح. حسب الإعداد الافتراضي، راجع كافة البيانات التي قد حدث عبر السلك بينما تم التقاط كما هو موضح في الشكل 3.
Figure 3: Captured data in Network		  Monitor
الشكل رقم 3: الملتقطة البيانات في "مراقبة الشبكة"

في هذه الحالة، يتم نفعًا حتى تتمكن من عرض حزم HTTP فقط. إنجاز التي بسهولة بواسطة تصفية البيانات الملتقطة لعرض بروتوكول HTTP. لتصفية البيانات الملتقطة انقر فوق التقاط ، ثم انقر فوق تصفية, أو اضغط المفتاح F8 في لوحة المفاتيح أو انقر فوق زر شريط الأدوات يبدو مثل القمع.

في مربع الحوار تصفية عرض ، انقر نقراً مزدوجاً فوق بروتوكول == أي عامل تصفية لعرض مربع الحوار تعبير كما هو موضح في الشكل 4.
Figure 4: The Expression dialog box		  provides powerful filtering capabilities
الشكل رقم 4: "تعبير" مربع الحوار يوفر قدرات تصفية فعالة

افتراضياً، يعرض "مراقب الشبكة" كافة البروتوكولات. لإظهار فقط بروتوكول HTTP انقر فوق تعطيل الكل ، انقر نقراً مزدوجاً فوق بروتوكول HTTP لتحديده ثم انقر فوق موافق. سيعرض "مراقبة الشبكة" HTTP فقط بروتوكول.

ملاحظة يمكنك تصفية "مراقبة الشبكة" قبل التقاط بحيث فقط بالتقاط الإطارات التي تطابق عامل التصفية تعيين. في معظم الحالات، أفضّل تصفية بعد الالتقاط.

بعد تصفية الحزم التي تم التقاطها بحيث يتم عرض بروتوكول HTTP سيعرض "مراقبة الشبكة" كل إطار من البيانات الملتقطة HTTP. بالنقر المزدوج فوق إطار ، يمكنك مراجعة معلومات مفصلة حول الحزمة هذه. في السيناريو نقوم تقوم التي تتعامل مع نقوم محاولة تحديد ما إذا قام العميل إرسال أية معلومات المصادقة إلى ملقم ويب. يُظهر التقاط هو موضح في الشكل 5 استجابة طلب GET صفحة ASP.NET. لاحظ أن ملقم ويب يستجب مرة أخرى مع رمز حالة 401 تشير إلى أنه تم رفض الوصول إلى صفحة ويب.
Figure 5: Network Monitor showing an		  “Access Denied” response when authentication is required
الشكل 5: إظهار استجابة “ "رفض"الوصول ” عند مطلوب مصادقة مراقبة الشبكة

بالنظر على رؤوس مصادقة WWW يمكنك مشاهدة في الشكل 5 أن يقبل ملقم ويب (مفاوضة) Kerberos وNTLM المصادقة. لذلك، ومن المتوقع أن العميل سيتم إرسال معلومات المصادقة تلقائياً بعد الرسالة “ "رفض"الوصول ” نقوم راجع هنا.
أرقام تسلسل
للبحث عن الاستجابة العميل الحزمة هو موضح في الشكل 5 نحتاج انظر أرقام التسلسل في هذه الاستجابة. يتتبع مفهوم تسلسل أرقام يتم misunderstood بشكل متكرر في مراجعة "مراقب الشبكة". تكون المفتاح إلى فهم ترتيب حدث الأشياء.

في الجزء الأوسط، في الشكل 5 ستلاحظ توسيع بروتوكول HTTP لكشف كافة رؤوس صفحات HTTP. أعلى HTTP البروتوكول هو بروتوكول TCP ثم راجع أرقام التسلسل ورقم إعلام كجزء من قطعة TCP. أرقام التسلسل (ممثلة بواسطة تسلسل في الحزمة TCP) توفر طريقة لتعريف قطعة TCP محددة. كل TCP تسلسل يجب أن تكون مصحوبة إقرار أو إعلام من ذلك التسلسل.

وفيما يلي متكررة من تتبع طلب HTTP GET:
11 4294967263.4294633595 LOCAL 00045A420DBC HTTP GET Request (from client using port 3134) DADATOP 192.168.0.4 IP TCP: .AP..., len: 402, seq:3410290480-3410290882, ack:1947093623, win:17520, src: 3134 dst:  80 
لاحظ أن رقم التسلسل الأخير هو 3410290882. لذلك، للبحث استجابة الملقم يجب أن تجد الإطار عليها هذا التسلسل. بمعنى آخر، كنت تبحث عن استجابة مع إعلام 3410290882. وفيما يلي هذا الإطار:
12 4294967263.4294636605 00045A420DBC LOCAL HTTP Response (to client using port 3134) 192.168.0.4 DADATOP IP TCP: .A...., len: 1460, seq:1947093623-1947095083, ack:3410290882, win:65133, src:  80 dst: 3134
تكون هذه الأرقام الهامة لأنه توجد أوقات عندما يظهر الاستجابة قبل الطلب في تتبع "مراقبة شبكة الاتصال". الطريقة الوحيدة يجب التأكد من مرتباً الحزم للتحقق من القطع باستخدام هذه الأرقام.

بما أن نقوم تبحث عبر هذا تتبع لمعرفة ما إذا كان العميل يقوم بإرسال معلومات المصادقة يمكن نستخدم قطع TCP لتعقب طلبات HTTP GET و الاستجابة من الملقم. وفيما متكررة من الإطار الذي يرسل معلومات المصادقة من العميل: 00045A420DBC المحلي
23 4294967263.4294641621 LOCAL 00045A420DBC HTTP GET Request (from client using port 3135) 192.168.0.2 192.168.0.4 IP HTTP: GET Request (from client using port 3135)  HTTP: Request Method = GET  HTTP: Uniform Resource Identifier = /webapplication1/webform1.aspx  HTTP: Protocol Version = HTTP/1.1  HTTP: Accept = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.  HTTP: Accept-Language = en-us  HTTP: Accept-Encoding = gzip, deflate  HTTP: User-Agent = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR   HTTP: Host = alien  HTTP: Connection = Keep-Alive  HTTP: Authorization = Negotiate TlRMTVNTUAABAAAAB4IIogAAAAAAAAAAAAAAAAAAAAAFASgKAAAA44 77 3D 3D 0D 0A 0D 0A         AAADw==....   
ما هذا إعلامنا ؟ يمكن لنا راجع تعيين رأس التخويل إلى "مفاوضة" و نقوم يمكن رؤية سلسلة طويلة من الأحرف التي تم إرسالها في رأس هذا. يخبر هذا الاستجابة لنا أن الملقم والعميل يتم التفاوض على اتصال NTLM. فإننا نعلم أن مصادقة NTLM قيد الاستخدام هنا لأن الحرف الأول ' "T." إذا كان "Y" ، يتم Kerberos. تعيين رأس الصفحة إلى "مفاوضة" بدلاً من "NTLM". هذا لا يعني فإنه يستخدم Kerberos أو NTLM ، إلا أنه سيتم أسلوب التخويل "مفاوضة" ثم حاول Kerberos أولاً إذا كان بإمكانك. إذا كان لا يمكن استخدام Kerberos سيستخدم NTLM.

الشكل رقم 6 لقطة شاشة للإطار أعلاه بحيث يمكنك مشاهدة حيث يتم إرسال معلومات المصادقة. لاحظ أنه قد تم توسيع رؤوس صفحات HTTP في الإطار الأوسط بحيث نقوم من مشاهدة تفاصيل كل رأس. Figure 6: The		  frame containing authentication information
الشكل رقم 6: الإطار يحتوي على معلومات المصادقة

يخبر هذا الإطار لنا يكون العميل معظم معلومات المصادقة حددت الإرسال. إذا يحصل المستخدم رفض الوصول عند هذه النقطة, فهو إما لأن المستخدم لا يكون لديك إذن المورد أو لأن يتم تغيير معلومات المصادقة في نقطة عبر السلك.
هناك طريقة أخرى للتصفية
في كثير من الحالات، قد يكون استكشاف ملقم الذي يحتوي على كثير من حركة المرور. وفي تلك الحالات، قد تشاهد عدد كبير من الإطارات HTTP و فقد يكون من الصعب العثور على تلك الأيمن. باستخدام تعبيرات التصفية من يمكنك الحصول بسهولة على اليمين في إطارات الصحيح.

انقر فوق الزر "تصفية" أو اضغط المفتاح F8 على لوحة المفاتيح، لإظهار مربع الحوار عامل تصفية العرض. على الجانب الأيسر انقر فوق تعبير لإضافة تعبير جديد. هناك عوامل تصفية مختلفة بين قد تريد استخدامها في هذا السيناريو: التصفية حسب عنوان IP "و" تصفية حسب رمز حالة HTTP.

للتصفية حسب عنوان IP انقر فوق علامة التبويب خصائص ثم قم بالتمرير في الجزء الأيسر حتى ترى IP. قم بتوسيع IP ثم قم بالتمرير حتى تشاهد عنوان المصدر. حدد == عن العلاقة ، أدخل IP عنوان الكمبيوتر العميل كما هو موضح في الشكل 7. بعد القيام بذلك، سوف تشاهد فقط الإطارات الواردة من عنوان IP الذي أدخلته.
Figure 7: Filtering by IP		  Address
الشكل رقم 7: تصفية بواسطة عنوان IP

من المهم ملاحظة أن عدة مرات عنوان IP قد لا تكون الخاصية أفضل على التي تريد تصفية تتبّع. oftentimes المستخدمين سوف يكون الاصطدام ملقم ويب بواسطة جهاز توجيه أو جدار حماية. وفي تلك الحالات، عنوان IP سيتم غالباً ما يكون عنوان IP من جهاز التوجيه أو جدار الحماية و العميل لا.

يمكنك أيضاً تصفية بواسطة رمز حالة HTTP. إذا كنت ترغب في تحديد موقع الإطار حيث يتم إرسال 401 إلى العميل بسرعة يمكنك تصفية على رمز حالة HTTP 401. وللقيام بذلك، حدد HTTP في القائمة بروتوكول: خاصية ثم لتوسيعه. قم بالتمرير لأسفل ثم انقر فوق رمز الحالة. حدد == للحصول العلاقة انقر فوق زر الخيار عشري (أهمية) ، أدخل 401 في الحقل قيمة كما هو موضح في الشكل 8 ثم انقر فوق موافق. سيعرض مراقب شبكة الاتصال تلك الإطارات حيث تم إرسال رمز حالة 401 كما هو موضح في الشكل 8.
Figure 8: Filtering by HTTP status		  code
8 رسم توضيحي: تصفية بواسطة رمز حالة HTTP
بعد أن قمت موجود الإطار حيث تم إرسال 401, يمكنك ضغط F7 ثم على لوحة المفاتيح لإيقاف تشغيل عامل التصفية. سيتم تمييز الإطار حيث تم إرسال 401 لا يزال ثم ثم اختبر الإطارات المحيطة استجابة العميل إلى 401.

fiddler – HTTP التصحيح الوكيل

إذا كان الاستعراض من Internet Explorer على جهاز الكمبيوتر العميل الذي تقوم باستكشاف أخطاء يمكنك استخدام Fiddler (الظاهرة في الشكل 9) بدلاً من برنامج "مراقب شبكة الاتصال" لالتقاط المعلومات HTTP المرسلة من العميل. يلتقط حزم HTTP فقط fiddler ثم تكامل مباشرة في Internet Explorer.
Figure 9: Fiddler
الشكل 9: Fiddler

في الشكل 9، يمكنك مشاهدة 401 استجابة الملقم ثم راجع العميل الاستجابة برأس مفاوضة (تمييز). في هذه الحالة، يحدث خطأ وقت تشغيل بعد يرسل العميل المصادقة (الذي غير المرتبطة بهذه المسألة) ولكن نقوم يمكن مشاهدة بوضوح يقم العميل به جزء عن طريق إرسال تذكرة Kerberos.

يمكنك تنزيل Fiddler من موقع التالي على الويب:

ما هو التالي

استخدام مراقبة الشبكة "أو" Fiddler التي يمكن غالباً التخلص العميل أنه مشكلة فشل المصادقة. الشهر التالي فإننا سوف انتقل عبر كيفية استخدام Filemon Regmon من SysInternals. هذه الأدوات مفيدة بشكل خاص في استكشاف مشاكل الإذن على نظام الملفات وفي التسجيل.
دوماً تتردد في إرسال الأفكار على المواضيع التي تمت معالجتها في الأعمدة المستقبلية أو في المعارف باستخدام نموذج Ask For It التي تريدها.

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 891032 - آخر مراجعة: 01/24/2008 21:55:26 - المراجعة: 3.1

Microsoft ASP.NET 1.0, Microsoft ASP.NET 1.1

  • kbmt kbhowto kbasp KB891032 KbMtar
تعليقات
/html>e="text/JavaScript" async=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" mp;t=">amp;t=">