سؤال

لدي صفحة ويب حيث يحدد المستخدم شركة وبهذا أحتفظ باسم الشركة في الذاكرة من خلال الجلسة ولكن عندما أذهب إلى الصفحة التالية، تستمر الجلسة لمدة 5 دقائق فقط؟لأي سبب وكيف يمكنني إصلاح ذلك، لقد قمت بتوسيع حالة الجلسة في Web.config ولكن ذلك لم ينجح.

مثال:جلسة ("اسم الشركة") = "تقنية وحدات البايت"

في web.config الخاص بي لدي:المهلة = "40" />

قمت بالانتقال من Default.aspx إلى CompanyDetail.aspx باستخدام الجلسة ("CompanyName") الخاصة بي

ولكن إذا تركت البرنامج خاملاً في CompanyDetail.aspx سأفقد حالة الجلسة.

أيه أفكار؟

تحياتي إيتيان

هل كانت مفيدة؟

المحلول 8

وشكرا للجميع على كافة المعلومات. شركة استضافة موقعي تمديد مجرد وقت تجمع التطبيقات والتي عملت!

والشكر اتيان http://www.erate.co.za

نصائح أخرى

ومن تعليقك أرى أن كنت تعتقد موقعك في تكتل موازنة التحميل.

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

ومحاولة جوجل للبحث عن "قاعدة بيانات sessionstate"، ستجد طن من الاشياء في هذا الشأن.

ويساعد هذا الأمل

واندريا

بعض الأسئلة:

  • وقت المهلة هو نفسه دائما؟5 دقائق؟
  • هل موقعك يعمل في مزرعة خوادم لموازنة التحميل؟مع أكثر من خادم الواجهة الأمامية؟
  • ما الذي تقوله في web.confing الخاص بك فيما يتعلق بالجلسات وحالة الجلسة؟

ويهمني ان الرهان الخاص بك لا تستخدم مزرعة موازنة التحميل، وفعلا باستخدام استضافة مشتركة.

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

ومنذ كنت تستخدم استضافة 3rd الطرف، وأشك بشدة تقومون به.

ويمكن hardset مهلة الدورة في IIS من قبل مزود المضيف، والسبب على الأرجح هو أنها وضعت هذا لمدة 5 دقائق.

واتصل مزود المضيف الخاص بك، ونطلب منهم ما هي الإعدادات جلسة IIS بهم، والذهاب من هناك.

في IIS، انتقل إلى خصائص موقع الويب الخاص بك، انقر فوق علامة التبويب الصفحة الرئيسية لدليل ومن ثم انقر فوق الزر تكوين. هنا، انقر فوق علامة التبويب خيارات وتحقق المهلة الدورة هناك. وأنا متأكد من هذا الوحيدة الآثار الكلاسيكية ASP، لكنني لست متأكدا 100٪.

إذا حدث ذلك دائما في 5 دقائق ثم تحقق Web.config للإعدادات الدورة، وتحقق IIS: الموقع / عقارات / ASP.NET، انقر على تكوين تحرير، حدد علامة التبويب إدارة الدولة، وتحقق من إعدادات الجلسة

ويمكن أن يكون هناك بعض الفيروسات على الملقم الذي يسبب تطبيق الويب لإعادة نفسه كل 5 دقائق، مع وقت التشغيل ASP.NET التفكير إما الثنائيات أو الملف web.config الذي تغير؟ ما هو ممكن أيضا.

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

وأنا قررت التخلي عن استخدام المتغيرات الدورة وذهبت مع سلاسل الاستعلام !! أفضل بكثير !!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top