묻고답하기
1.7.3.8 -> 1.7.4.x 업데이트시 Fatal error: Call to a member function getAction() on a non-object in xe/classes/db/DB.class.php on line 674 발생하는 문제
2014.06.14 16:48
발생하는 에러
Fatal error: Call to a member function getAction() on a non-object in xe/classes/db/DB.class.php on line 674
현재 1.7.3.8에서 웹사이트를 운영하고 있습니다. 그 전까지는 업데이트가 잘 되었는데 1.7.4 부터 코어 업데이트를 하지 못해 아직까지도 1.7.3.8을 사용하고 있습니다. 관련해서 검색도 많이 하고 여러 가지 해결 방법들을 모색해봤지만 계속 실패를 거듭해서 이렇게 질문을 드려봅니다.
일단 위 에러로 구글에서 검색하면
1) 파일 업로드나 압축 해제가 제대로 이루어지지 않았거나
2) db.config.php 파일이 예전 방식이거나
3) 업데이트 작업 순서가 틀렸거나.
와 같은 문제점들이 지적되었는데 이 문제들과는 관련이 없다는 것을 미리 말씀드립니다. (여러 차례 확인을 하였습니다.) admin 페이지에 접속을 해놓은 상태에서 파일 덮어쓰고 다시 admin 페이지를 새로고침하기만 해도 위의 에러가 발생하므로 모듈을 업데이트 하고 캐시를 재생성하고 하는 작업은 아예 할 수도 없는 상황입니다.
다만 한 가지 의심 가는 부분이 있어 혹시 이것이 업데이트에 장애가 될 수 있는지 의견을 여쭙고 싶네요.
현재 서버의 운영 환경은 다음과 같습니다.
웹서버 : lighttpd 1.4.35 (fast-cgi 이용)
php : 5.3.28
mysql : 5.6.14
Xcache 3.1.0
memcache 2.2.7 (로그인 세션만 처리)
이런 생각을 하게 된 이유 중 하나는 미러링 서버(개발 및 테스트 용)에서는 아파치를 사용하는데 업데이트에 별 문제가 없었기 때문입니다. 혹시 이런 개연성이 있다면 웹서버를 갈아타야 하나 고민도 하고 있습니다. 도움 말씀 주시면 감사하겠습니다.
[업데이트] 현재 여러 대의 웹서버가 있어서 xe의 php 파일들은 스토리지 서버에 따로 저장되어 있고 NFS를 통해 각 웹서버에 마운트해서 사용하고 있습니다.