| CMS/프레임워크 | XE 1.x |
|---|---|
| 개발 언어 | PHP 5.x |
| 문제 페이지 주소 | 비공개 (검색로봇) |
안녕하세요.
아무 지식도 없이 십년전에 만든 사이트를 나이 칠십이 넘은데다 말년에 두번의 화재로
알그지가 되어 기초연금으로 사는 처지에 모든 걸 직접하려니 아는게 없어
막막하고 어려움이 많습니다.
부디 도와주시기 바랍니다.
XE1에서 라이믹스로 갈아타려고 4/9일 이 게시판에서 조언을 얻어 덮어씌운후
PHP를 올렸으나 사이트가 장시간 먹통, 다시 카페 24에 요청하여 이전 환경으로
복원요청, 사이트가 정상적으로 뜨고 아이디로 정상적으로 접속은 되나
관리자 페이지를 클릭하면 들어가지지 않고
“페이지가 작동하지 않습니다. 요청을 처리할 수가 없습니다, HTTP ERROR 500”
이와같이 뜹니다. 카페24에 수정요청하였더니 근 삼일만에 아래와 같은 답변이
왔습니다.
안녕하세요.
카페24 호스팅 고객지원입니다.
문의하신 내용에 대해 안내드립니다.
현재 관리페이지 접속 시 오류가 발생하는 현상은 서버 장애가 아닌,
사이트 내부 처리 과정에서 오류가 발생할 때 나타나는 증상입니다.
해당 오류는 주로 PHP 오류, 플러그인 또는 테마 충돌, 데이터베이스 연결 문제 등으로 인해 발생할 수 있습니다.
정확한 원인 확인을 위해서는 PHP 에러 로그 확인이 필요하므로,
PHP 에러 로그를 활성화하신 후 동일 증상이 발생하는 시점의 로그를 확인해주시기 바랍니다.
에러 로그를 통해 오류가 발생한 파일 또는 플러그인을 확인하신 후
해당 부분에 대한 비활성화 또는 소스 수정 등의 조치를 진행해주시기 바랍니다.
카페24는 서버 환경 외 소스 수정에 대한 지원이 어려운 점 참고 부탁드리며,
직접 점검이 어려우신 경우 홈페이지 제작사 또는 개발사를 통해 점검을 진행해주시기 바랍니다.
문의시 php 에러로그를 통해 확인된 log를 기재하여 접수 해주시기 바랍니다.
[PHP 에러로그 출력 가이드]
PHP 5.3 버전 이상의 환경에서는 보안상 PHP 에러가 기본적으로 출력되지 않습니다.
개발 및 디버깅을 위해 에러 출력을 원하시는 경우,
www 폴더 내 .htaccess 파일에 아래 내용을 추가해주시기 바랍니다.
※ 파일명은 반드시 .htaccess로 생성해주시기 바라며, 저장 시 파일 형식은 ‘모든 파일’로 선택해주시기 바랍니다.
※ 기존 .htaccess 파일이 있는 경우 해당 파일에 구문을 추가해주시기 바랍니다.
※ .htaccess 파일 수정 시 오타가 있을 경우 Internal Server Error가 발생할 수 있으므로, 수정 전 원본 백업을 권장드립니다.
php_value error_reporting 6135
php_flag display_errors on
php_flag log_errors on
php_value error_log /home/hosting_users/계정아이디/php_error.log
또한, 이에 대한 해결방법으로는 PHP메모리를 증량 해보시는 방법도 있습니다.
[방법 .htaccess 파일 수정]
www 폴더 내 .htaccess 파일에 아래 내용을 추가해주시기 바랍니다.
php_value memory_limit 512M
기본적으로 해당 오류의 경우 카페24에서는 확인이 어렵습니다.
카페24는 서버 등 인프라를 제공/관리하는 업체로 호스팅 상품, 서비스 사양 등과 같은 문의 안내가 가능하며,
홈페이지 제작(예 : 소스, 설정) 혹은 디자인 문의 등의 제작 상담은 지원이 어려운 점 양해부탁드립니다.
번거로우시더라도 직접 진행이 어려우실 경우 홈페이지 개발자나 제작업체 컨텍하여 상의 후 진행 해주시기 부탁드립니다.
라는 답변을 들은 후 .htaccess 파일을 내려받아 아래그림과 같이 적고
올렸더니

수정후 관리지 페이지를 클릭하면
Fatal error: Call to undefined method ExtraVar::setModule() in /home/hosting_users/jb3210/www/classes/module/ModuleHandler.class.php on line 1202
라고 뜹니다.
이게 무슨 문제인지 알려주시면 고맙겠습니다.
파란색 창에 있는 것도 올바르게 삽입한 건지 궁금하네요, 제가 전혀 아는 게 없어서요.
(XE홈피 보고 도움받고 만들었는데, 네이버 이것들 때문에 XE 개인홈페이지가 초토화 되어 버렸네요.)
XE를 다시 덮어 씌워볼까 하는데,
한달전에 파일질라로 XE를 내려받은 게 있는데 이걸 올려도 괜찮을런지요,
부디 도움주시면 고맙겠습니다.

댓글 2
CAFE24측에서 기본적으로 에러내용이 안뜨게 되어있어 PHP 에러 로그 확인이 필요해서
.htaccess에 해당내용을 추가하게 하신것이고 잘추가하셔셔 문제가된 에러 메세지가 뜬것입니다.
/home/hosting_users/jb3210/php_error.log 파일을 열어보시면 에러로그가 저장됐을거예요.
Fatal error: Call to undefined method ExtraVar::setModule() in /home/hosting_users/jb3210/www/classes/module/ModuleHandler.class.php on line 1202
라고 로그가 쌓여있을것 같네요.
맞는지 확인해서 카페24측에 log 내용으로 다시 문의하시면 됩니다.
-----------------------
추가로 AI에 해결방법 문의 결과는 아래와 같습니다.
1.
.htaccess파일에 작성하신 내용이 맞나요?네, 이미지 속 파란색 영역에 작성하신 내용은 카페24 가이드대로 아주 정확하게 잘 삽입하셨습니다. * 계정 아이디 부분도
jb3210경로로 잘 맞추셨고, 메모리 제한도 넉넉히 512M로 설정하셨네요.덕분에 이전에는 안 보이던
Fatal error메시지가 화면에 뜬 것이니, 디버깅을 위한 준비는 완벽하게 하신 셈입니다.2. 발생한 에러 메시지 분석
이 에러는 **"ModuleHandler라는 파일이 ExtraVar라는 곳에서 setModule()이라는 기능을 쓰려고 했는데, 정작 그 기능이 정의되어 있지 않다"**는 뜻입니다.
주로 다음과 같은 경우에 발생합니다.
XE/Rhymix 코어 업데이트 미비: 특정 모듈이나 플러그인은 최신 버전인데, 정작 이를 실행하는 코어 파일(ModuleHandler 등)이 구버전일 때 발생합니다.
파일 누락 또는 깨짐: FTP로 파일을 올리거나 옮기는 과정에서 일부 파일이 정상적으로 올라가지 않아 정의된 함수를 찾지 못하는 경우입니다.
3. 해결 방법 제안
①
files/cache폴더 삭제 (가장 먼저 해보세요)XE/라이미스는 성능을 위해 캐시 파일을 생성합니다. 소스가 꼬였을 때 캐시가 남아서 에러가 지속될 수 있습니다.
FTP(파일질라)로 접속하여
www/files/cache폴더 안의 내용을 모두 삭제한 후 관리자 페이지에 접속해 보세요. (폴더 자체는 지우지 마시고 안의 내용물만 지우세요.)② 한 달 전 백업본을 덮어씌워도 될까요?
네, 가능합니다. 하지만 주의사항이 있습니다. 한 달 전에는 정상적으로 작동했다면, 해당 파일을 다시 올리는 것이 해결책이 될 수 있습니다. 다만:
DB는 그대로라는 점: 파일만 한 달 전으로 돌리는 것이므로, 그사이 설치한 모듈이나 설정값이 DB와 충돌할 가능성은 미세하게 있습니다.
전체 덮어쓰기보다는 '해당 파일' 확인: 에러가 난
classes/module/ModuleHandler.class.php파일이나common폴더 쪽 파일들이 백업본과 크기가 다른지 확인해 보시고 덮어씌워 보시는 것을 추천합니다.XE1 최종버전 다운로드 링크입니다.
https://xe1.xpressengine.com/index.php?mid=download&package_id=18325662&release_id=22756225
에러는 서로 다른 버전의 파일들이 섞인 것 때문으로 보입니다. 일부 파일은 구 버전이고 일부 파일은 새 버전이어서, 서로 합이 안 맞는 거죠. 어느 한 쪽으로 깔끔하게 정리해야 하는데, 아무리 완벽하게 구 버전 백업본을 업로드하더라도 새 버전에 새로 생긴 파일이 저절로 삭제되지는 않잖아요? 오토로딩에 의존하는 PHP 프레임워크 특성상, 구 버전에 없던 파일이 존재하는 것만으로도 에러가 날 수 있습니다. 결국 새 버전 쪽으로 통일하셔야 할 가능성이 높습니다.
.htaccess 수정시에는 어정쩡하게 중간에 끼워넣지 말고 맨 아래에 추가하는 것이 정석입니다만, 에러메시지가 나오도록 한다는 목적을 달성했다면 뭐 지금 상태도 나쁘진 않습니다.