Как изменить время сеанса администратора в Magento?


28

Возможно, что время, когда сеанс администратора активен, слишком короткое.

Как изменить время, необходимое для автоматического выхода пользователя из серверной части?

Ответы:


28

Для этого есть пункт меню:

Система> Конфигурация> Дополнительно> Администратор> Безопасность> Время жизни сеанса (секунды)

Также проверьте переменные среды php

  • php_value session.cookie_lifetime <seconds>
  • php_value session.gc_maxlifetime <seconds>

Чтобы убедиться, что вы редактируете правильный файл php.ini, создайте простой файл «check.php» со следующим содержимым:

<?php 
phpinfo();
?>

, поместите файл в домашний каталог magento, вызовите его из браузера (URL / check.php) и проверьте эти настройки.

Для получения дополнительной информации смотрите здесь .


16

Решение для Magento 2.0

Для Magento 2 его можно найти в левой панели на панели администратора.

Магазины> Конфигурация> Дополнительно> Админ> Безопасность

Admin Session Lifetime (секунды) опция в главном окне.

Значение по умолчанию - 900 для Magento 2. Для 1 часа установлено значение 3600(60 секунд * 60 минут).

Вы должны настроить это в «Конфигурации по умолчанию» вместо выбора веб-сайта или магазина в качестве опции для просмотра магазина. Я пытался использовать его в представлении магазина через раскрывающееся меню в левом верхнем углу, и вариант не существует. Это имеет смысл, поскольку это административная конфигурация.

Обратите внимание, что этот параметр не влияет на время жизни куки, по крайней мере, с Magento 2.1


Кажется, я сейчас работаю на 2.1, по крайней мере, в режиме разработчика, если это имеет значение.
Аарон Макмиллин

Сломанный в 2.1.1, всегда сессионный cookie
Alex

Это работает для моего Magento v.2.3.1
kanenas

4

Еще одно простое решение без изменения каких-либо настроек - это установить любое auto refresh addonдля вашего браузера и установить его время (60 секунд).

Он будет автоматически обновлять страницу каждые 6 секунд, что предотвращает истечение срока жизни сессии, и мы можем начать работать с другой вкладкой.

Я использовал, Easy Auto Refreshи это прекрасно работает для меня.


2

Система -> Конфигурация -> Общие -> Интернет -> Управление файлами cookie сеанса

Срок действия cookie: измените это значение (т. Е. 86400).


8
Извините, но это значение времени жизни сеанса во внешнем интерфейсе (магазине). Время жизни сеанса администратора можно установить через Система> Конфигурация> Расширенный раздел> Администратор> Время жизни сеанса (в секундах). Установите его на 3600 (60 секунд * 60 минут) в течение одного часа.
Анна Фёлькл

@ AnnaVölkl Я написал подробный пост на эту тему. magento2training.com/…
Нахид

2

Посмотрите скриншот с прикрепленным изображением ниже из админ-панели Magento 2, чтобы настроить сеанс для входа в систему. введите описание изображения здесь


2

Решение для Magento 2.1+

Начиная с 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, внедренный через параметр конструктора.

Таким образом, время жизни куки используется из конфигурации, как и во внешнем интерфейсе.

Обратите внимание, что конфигурация в Stores> Configuration> Advanced> Admin Security> Session Lifetime больше не влияет на файлы cookie! Он используется для определения времени жизни сеанса Redis, поэтому, если вы увеличите время жизни куки, вам также следует увеличить это значение.


1

На самом деле Sunovisio предоставляет расширение, которое позволяет вам поддерживать сеанс администрирования во время работы и независимо от тайм-аута сеанса.

Вы можете проверить это там: http://ecommerce.sunovisio.com/index.php/admin-keep-alive-1-1-0.html

Надеюсь, это расширение поможет вам работать с вашей панелью администрирования Magento!



0

да, но сначала вы должны убедиться, что местоположение magento и время сервера находятся в одном часовом поясе. также убедитесь, что в php.ini нет сессий. *

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.