مشکل logout شدن بعد از چند دقیقه

soroush sh
18 آذر ۱۴۰۱

سلام خدمت دوستان،

 من با asp.net یه سایتی ساختم ، وقتی تو لوکال هاست و سیستم خودم هستش هیچ مشکلی نداره ولی وقتی گذاشتم روی هاست این مشکل رو داشت برام که وقتی تو سایت باشی و هیچ کاری نکنی (روی هیچ لینکی نزنی و اینا ...) بعد از 7 یا 8 دقیقه اتوماتیک میندازه بیرون از سایت ولی کوکی های کاربر میمونه روی مروگرش .

تایم انقضای کوکی هم 30 روزه اما کاربر اگه چند دقیقه هیچ کاری نکنه لاگ اوت میشه 

464

1 پاسخ
  • امیر زارعی10 دي ۱۴۰۱

    سلام دوست عزیز

     

    من هم قبلا این مشکلو داشتم و دلیلش هم محدودیت هایی هست که از طرف هاستینگ اعمال شده.

     

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

    این کد رو در بخش سرویس هاتون اضافه کنید

    
    var appBaseDirectory = AppContext.BaseDirectory;
    string keyDirectory = Path.Combine(appBaseDirectory, "نام_فولدر_دلخواه");
    services.AddDataProtection()
       .PersistKeysToFileSystem(new DirectoryInfo(keyDirectory))
       .SetDefaultKeyLifetime(new TimeSpan(30, 0, 0, 0, 0))
       .SetApplicationName("نام_پروژه_دلخواه");

    اگر علاقمند بودین میتونین درباره DataProtection در asp core تحقیق کنید و توصیه میشه اینکارو انجام بدید چون توی این روش از رمزگذاری خاصی استفاده نشده و امنیت کافی نداره (با اینکه مشکلتونو حل میکنه)

     

     

    ---- اگر به هر دلیلی کار نکرد چک کنید که آیا با "نام_فولدر" که قرار دادید در محل پروژه ایجاد شده یا خیر ، اگر ایجاد نشده یعنی برنامه شما دسترسی به ساخت دایرکتوری نداره و اینکار رو بکنید

     

    در پنل Plesk قسمت مدیریت سایتی که ایجاد کردید ، گزینه Virtual Directory برین و در قسمت بالا روی Permissions برید و به application تمام دسترسی ها رو بدید.

     

     

    امیدوارم مشکلتون حل بشه