1 개요[ | ]
- 미디어위키 $wgSessionCacheType
- 세션 테이터를 저장하는 캐시 유형
- 기본값:
CACHE_ANYTHING
2 설명[ | ]
- 세션 데이터의 저장 메커니즘
- "캐시"라는 이름이 붙었지만, 세션의 기본 저장 메커니즘이다. 작동하지 않으면 위키에 로그인할 수 없다.
- 사용가능한 유형은
$wgMainCacheType
를 참조하자 . - 적절한 작동을 위해서는 영구 캐시로 설정해야 하며 단일 클라이언트의 요청을 처리할 수 있는 여러 서버가 있는 경우 모든 서버에서 캐시를 공유해야 한다.
$wgMainCacheType
을CACHE_ACCEL
로 설정하고 이것을 기본값인CACHE_ANYTHING
으로 두면 이러한 요구사항을 충족하지 않을 것이다.- 해결방법은 이를
CACHE_DB
와 같은 적절한 캐시로 설정하는 것이다. CACHE_DB
를 사용하면 데이터베이스가 잠겨 있을 때(예:$wgReadOnly
) 사용자가 로그인할 수 없다 .
3 세션 공유 핵[ | ]
MediaWiki 1.27 이전에는 일부 위키팜에서, 싱글사인온을 위해 단일 도메인, 공유 사용자 테이블, 공유 세션 캐시 디렉토리를 사용했다.
1.27부터는 기본적으로 파일 기반 세션 캐시를 사용할 수 없는데, 다음과 같이 하면 사용할 수 있다.
PHP
Copy
$wgSessionCacheType = 'session-cache';
$wgObjectCaches['session-cache'] = [ 'factory' => 'ObjectCache::newAnything', 'keyspace' => 'shared-session' ];
이렇게 하면 모든 위키의 세션 캐시가 동일한 키 공간을 사용하게 된다.
이 방법은 공식적으로 지원되지 않는다. 다른 위키에서 세션에 어떤 것을 넣으려고 하는 확장기능을 사용하면 문제가 발생할 수 있다. 또한 1.30 이상에서만 작동한다.
4 같이 보기[ | ]
5 참고[ | ]
편집자 Jmnote
로그인하시면 댓글을 쓸 수 있습니다.