묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
Uncaught ReferenceError: xe is not defined
2013.05.06 23:15
로컬호스트에서 작업을 할 때는 잘 되는데
실서버에 XE를 옮겨서 실행하면
Uncaught ReferenceError: xe is not defined
라는 애러가 발생합니다.
살펴보니 로컬호스트에서는 xe.min.js 를 로드하는데
실서버에서는 xe.min.js 를 불러오는 스크립트가 생성되지 않더군요
어디에서 생성하는 것인지?
어떻게 해야 로드하게 할 수 있는지 혹시 아시는분 계신가요?
아무리 찾아봐도 방법을 알 수가 없네요...
고맙습니다
스스로 해결하고 해결방법을 공유합니다.
문제는 XE 1.4 에서 1.7로 업그레이드를 하고자
로컬에서 모든 작업을 마친 후 실서버로 옮기는 중에 발생하였습니다.
모든 작업을 마친 후 실서버에 업로드하였는데 xe.min.js 등 여러가지 리소스를 불러오지 않는 것이 문제였습니다.
따라서 관리자 페이지부터 게시판 글쓰기 기능 등이 작동이 안됐습니다.
왜 그런지 찾던 중에 apache error 로그를 확인하니
위와 같은 애러 메시지를 출력하는 것 입니다.
그래서 애러를 검색했더니 다음과 같은 글을 발견했습니다.
http://www.xpressengine.com/qna/21427419
http://www.xpressengine.com/blog/textyle/21594471
결국 문제의 원인은 php 함수 array_walk() 를 사용할 때 발생하는 것이었습니다.
이 함수는 php.net에서는 php4, php5를 지원한다고 표시되어 있긴 하지만 PHP 5.2 이하의 버전에서는 문제가 발생하는 듯 했습니다.
실서버에서 사용하던 PHP 버전은 5.1 이었구요. 그래서 PHP 버전을 5.3으로 업그레이드 하였고, 모든 문제가 해결되었습니다.
이 같은 문제를 겪고 계신 분은 아무쪼록 저와 같이 시행착오 없이 쉽게 해결하시길 바랍니다.