장애 조치를 위해 2 개의 서버를 사용할 수 있습니다. 데이터베이스는 마스터 - 마스터 (Master-Master)로 복제되어 각 서버가 전체 스택의 복사본을 실행합니다. 내가 한 서버에있을 때 세션 테이블이 업데이트되고 요청을 검사 한 후 동일한 PHPSESSID가 전송 된 것을 볼 수 있습니다. 하지만 보조 컴퓨터로 URL이나 장애 조치를 변경하면 세션이 종료되고 다시 로그인해야합니다.PHP 복제 된 데이터베이스 세션 장애 조치
동일한 PHPSESSID 값이 보조 서버에서 전송되지만 세션을 인식 할 수 없습니다. 특정 상자에 세션을 연결하는 Apache/PHP가 있습니까? 그렇다면 어떻게 데이터베이스에 이미있는 세션을 인식하도록 할 수 있습니까?
@drowe이 PHP 함수 검토 : http://php.net/manual/de/function.session-set-save-handler.php – SteAp
나는 $ _SESSION을 사용하고, 그리고 PHPSESSID에 데이터베이스의 ID와 일치하는 쿠키 값이 있습니다. 그러나 PHP가 세션 데이터를 사용하려고 시도하면 borks가됩니다. 어떤 부분이 특정 서버에 묶여 있습니까? 그리고 한 서버가 다른 서버의 세션 데이터를 인식하도록 무시할 수 있습니까? – drowe
세션의 작동 방식을 읽어야합니다. PHP의 세션은 클라이언트에게 쿠키를 통해 토큰을 부여한 다음 디스크의 $ _SESSION에 데이터를 저장하여 작동합니다. 클라이언트가 다시 연결하면 디스크에 저장된 데이터로 세션 토큰을 재결합합니다. – JohnD