Magento 2.1+ এর সমাধান
যেহেতু ম্যাজেন্টো ২.১ অ্যাডমিন সেশনের আজীবন সর্বদা "সেশন" থাকে, অর্থাৎ ব্রাউজারটি বন্ধ না হওয়া পর্যন্ত। এইহয়েছে সুরক্ষার কারণে প্রবর্তিত হতে পারে।
সম্পর্কিত কোডটি এতে রয়েছে Magento\Backend\Model\Session\AdminConfig
:
/**
* Set session cookie lifetime to session duration
*
* @return $this
*/
protected function configureCookieLifetime()
{
return $this->setCookieLifetime(0);
}
আপনি যদি এই আচরণটি পরিবর্তন করতে চান তবে নীচের ইন্টারসেপ্টর পদ্ধতিতে আপনি এই শ্রেণীর জন্য একটি প্লাগইন যুক্ত করতে পারেন:
public function beforeSetCookieLifetime()
{
$lifetime = $this->scopeConfig->getValue(
\Magento\Framework\Session\Config::XML_PATH_COOKIE_LIFETIME,
\Magento\Framework\App\Config\ScopeConfigInterface::SCOPE_TYPE_DEFAULT);
return [$lifetime, \Magento\Framework\Session\Config::COOKIE_LIFETIME_DEFAULT];
}
কোথায় $this->scopeConfig
এর একটি দৃষ্টান্ত হওয়া উচিত \Magento\Framework\App\Config\ScopeConfigInterface
, কন্সট্রাকটর প্যারামিটার মাধ্যমে ইনজেকশনের।
এইভাবে কুকি জীবনকাল কনফিগারেশন থেকে ব্যবহৃত হয় ঠিক যেমন সম্মুখভাগে।
নোট করুন যে স্টোরগুলিতে কনফিগারেশন> কনফিগারেশন> অ্যাডভান্সড> অ্যাডমিন সিকিউরিটি> সেশন লাইফটাইম আর কুকিগুলিতে কোনও প্রভাব ফেলবে না! এটি রেডিস সেশনের আজীবন নির্ধারণের জন্য ব্যবহৃত হয়, তাই আপনি যদি কুকির জীবনকাল বৃদ্ধি করেন তবে আপনার এই মানটিও বাড়ানো উচিত।