PDA

View Full Version : سوال: از بین رفتن session و Cookie



khz-web1
یک شنبه 03 مرداد 1389, 00:13 صبح
سلام ...
من وب سایت رو آپلود کردم و بدون هیچ مشکلی بالا میاد ، اما یه قسمت داره واسه مدیران که لوگین کنند ! متاسفانه با یک ارور خیلی عجیب روبرو شدم که مبنی بر این بود تعداد کنترل ها در صفحه زیاده و در هنگام لوگین با چنین ارور روبه رو شدم

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

این مشکل رو از طریق دستور زیر حل کردم

<machineKey validationKey="" decryptionKey="" validation="SHA1"/>

ولی متاسفانه در مقدارم session و کوکی ها از بین میره و کاربر بعد 5 ثانیه Logout میشه! این Logout زمانی اتفاق میوفته که بر روی یکی از منوهای پنل مدیریت کلیک کند

از دوستان کسی میدونه چجوری این مشکل رفع میشه؟

hlikehamed
سه شنبه 05 مرداد 1389, 00:41 صبح
احتمالا توی یه جایی از کدت سشن رو پاک می کنی یا یه همچین چیزی.
مقدار پیشفرض Timeout رو امتحان کردی؟ مقدارش رو بیشتر کن شاید درست شد.
و اینکه اگر از دستورات حذف برای یک فایل استاده می کنی. این مساله هم باعثش میشه.

vb_bmw
سه شنبه 05 مرداد 1389, 00:49 صبح
موارد مشابهی رو من دیدم که مشکلش از این مورد ها بود :


کانکشن های دستی به دیتابیس موجود بود که باعث کرش کانکشن های سالم می شد
timeout به علت مشکلات سروری از machine.config باید عوش می شد
request های Ajax ای موجود بود که از طریق وب سرویس اجرا می شد که انجا کرشی رو ایجاد میکرد.

khz-web1
سه شنبه 05 مرداد 1389, 01:35 صبح
احتمالا توی یه جایی از کدت سشن رو پاک می کنی یا یه همچین چیزی.
مقدار پیشفرض Timeout رو امتحان کردی؟ مقدارش رو بیشتر کن شاید درست شد.
و اینکه اگر از دستورات حذف برای یک فایل استاده می کنی. این مساله هم باعثش میشه.

1-نه من هیچ جایی از کدم پاکش نمی کنم؟ مطمئنم....
2- تست می کنم حتمی ....
3- نه من فالیی رو حذف نمی کنم ولی یه DIV رو با جاوا اسکریپت HIDE می کنم که فکر نمی کنم ربطی داشته باشه

khz-web1
سه شنبه 05 مرداد 1389, 01:42 صبح
موارد مشابهی رو من دیدم که مشکلش از این مورد ها بود :


کانکشن های دستی به دیتابیس موجود بود که باعث کرش کانکشن های سالم می شد
timeout به علت مشکلات سروری از machine.config باید عوش می شد
request های Ajax ای موجود بود که از طریق وب سرویس اجرا می شد که انجا کرشی رو ایجاد میکرد.


1- منظورت رو متوجه نمیشم....کانکشن دستی؟
2- وقتی از web.config عوض کنم فکر کنم اولویت با web.config باشه !!! دیگه نیازی به Machine.config نیست ....!!!
3-نه ajax ندارم .... اصلای از ajax استفاده نکردم....

مساله اینجاست که رو LOCALHOST بدرستی کار میده ... ولی روی سرور مشکل داره!

hlikehamed
سه شنبه 05 مرداد 1389, 02:19 صبح
نمیدونم ربطی داره یا نه. شاید به خاطر .net باشه.
پروژت رو با چه .net ی نوشتی؟ 2 یا 3؟
هاستی که داری از چه دات نتی استفاده می کنه؟

و یک چیز دیگه. توی پروژت که داری استفاده می کنی بیشتر از یک تگ form استفاده می کنی یا نه؟


اینی که می گم رو دقیقا مطمئن نیستم اما یادمه یا بار یه خطای مثل این داشتم و اونم به خاطر این بود که توی یه تیکه از کدی که مربوط به جستجو با موتور گوگل بود یه تگ فرم دیگه توی یه صفحه بود. اون رو که برداشتم حل شد.

و این رو هم تست کن :

<%@ Page EnableViewStateMac="false" %>



راستی توی تگ Form خاصیت action رو مقدار دهی می کنی؟ شاید به خاطر این هم باشه

hlikehamed
سه شنبه 05 مرداد 1389, 02:27 صبح
این رو هم ببینی بد نیست. یه سری توضیحات داده در مورد این مشکل. به خاطر سرعت بارگذاری و این حرفا.

http://connect.microsoft.com/VisualStudio/feedback/details/101988/validation-of-viewstate-mac-failed-when-posting-too-quickly