Magento에서 관리 세션 시간을 변경하는 방법?


28

때때로 관리 세션이 활성화되는 시간이 너무 짧을 수 있습니다.

백엔드에서 사용자를 자동 로그 오프하는 데 걸리는 시간을 변경하는 방법은 무엇입니까?

답변:


28

이에 대한 메뉴 항목이 있습니다.

시스템> 구성> 고급> 관리> 보안> 세션 수명 (초)

PHP 환경 변수도 확인하십시오.

  • php_value 세션 .cookie_lifetime <seconds>
  • php_value 세션 .gc_maxlifetime <seconds>

올바른 php.ini를 편집하려면 다음 내용으로 간단한 "check.php"파일을 만드십시오.

<?php 
phpinfo();
?>

파일을 magento 홈 디렉토리에 놓고 브라우저 (URL / check.php)에서 호출 한 다음이 설정을 확인하십시오.

자세한 내용은 여기 를 참조 하십시오 .


16

마 젠토 2.0 솔루션

Magento 2의 경우 관리자의 왼쪽 패널에서 찾을 수 있습니다.

상점> 구성> 고급> 관리> 보안

Admin Session Lifetime 기본 창의 (초) 옵션.

Magento 2의 기본값은 900입니다. 1 시간 동안 3600(60 초 * 60 분)으로 설정하십시오.

상점보기 옵션으로 웹 사이트 또는 상점보기를 선택하는 대신 "기본 구성"에서이를 구성해야합니다. 왼쪽 상단의 드롭 다운 메뉴를 통해 상점보기에서 사용하려고했지만 옵션이 없습니다. 관리 구성이므로 의미가 있습니다.

이 설정은 Magento 2.1 이후로 쿠키 수명에 영향을 미치지 않습니다.


적어도 개발자 모드에서는 2.1에서 현재 나를 위해 일하고있는 것 같습니다.
Aaron McMillin

2.1.1에서 깨짐, 항상 세션 쿠키
Alex

내 Magento
v.2.3.1

4

설정을 수정하지 않은 또 다른 간단한 해결책은 auto refresh addon브라우저에 설치하고 시간을 설정하는 것입니다 (60 초).

60 초마다 페이지를 자동으로 새로 고침하여 세션 수명이 만료되는 것을 방지하고 다른 탭에서 작업을 시작할 수 있습니다.

나는 그것을 사용 Easy Auto Refresh했고 그것은 나에게 잘 작동한다.


2

시스템-> 구성-> 일반-> 웹-> 세션 쿠키 관리

쿠키 수명 :이 값을 변경하십시오 (예 : 86400).


8
죄송합니다. 이것은 프런트 엔드 (샵)의 세션 수명 값입니다. 관리 세션 수명은 시스템> 구성> 고급 섹션> 관리자> 세션 수명 (초)을 통해 설정할 수 있습니다. 1 시간 동안 3600 (60 초 * 60 분)으로 설정하십시오.
Anna Völkl

@ AnnaVölkl 나는 이것에 대한 상세 게시물을 썼습니다. magento2training.com/…
Nahid

2

Magento 2 관리자 패널에서 첨부 된 이미지 스크린 샷을 확인하여 로그인 사용자를위한 세션을 설정하십시오. 여기에 이미지 설명을 입력하십시오


2

마 젠토 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생성자 파라미터를 통해 주사.

이런 식으로 쿠키 수명은 프론트 엔드에서와 같이 구성에서 사용됩니다.

주의 구성 있다는 상점> 설정> 고급> 관리자 보안> 세션 수명이 더 이상 쿠키에 영향을주지 않습니다! Redis 세션 수명을 결정하는 데 사용되므로 쿠키 수명을 늘리면이 값도 늘려야합니다.



1

MySQL에서 :

테이블 : core_config_data

경로 : admin / security / session_lifetime


0

예, 그러나 먼저 magento 위치와 서버 시간이 동일한 시간대인지 확인해야합니다. 또한 php.ini에서 세션이 없는지 확인하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.