글
[XE] 흰 페이지만 보일 때 && 1.5 버젼 이후 모듈 사용 주의사항
제로보드 XE 에서 1.5 버젼 이전에 사용하던 모듈이 1.5 버젼 이후의 버젼으로 코어를 업데이트 했을 때 모듈들이 아무것도 없는 화면을 보이면서 페이지가 작동을 하지 않는 문제가 발생하고 있다.
이는 1.5 버젼 이후부터 __ZBXE__ 스위치가 __XE__ 로 변경되었기 때문이다.
다음의 패치 이슈를 참고 하도록 하자. :
Issue 2607: |
독립 php 페이지에서 세션공유시 |
config.inc.php 를 XE 세션 공유를 위하여 require() 등으로 가져올 때, 아래의 구문에 의하여 exit() 이 되어버린다.
}
기존에 사용하던 모듈(지금 문제가 발생하고 있는 모듈) 의 소스코드를 보면 아래와 같이 define이 되어있는 구문이 있을 것이다.
define('__ZBXE__',true);
define('__XE__', true); 구문을 require() 로 config.inc.php 를 가져오기 전에 추가해주면 해당 문제는 해결된다.
ex)
// Define XE Module
define('__ZBXE__',true);
define('__XE__',true); // 추가
require_once("./config/config.inc.php");
다만, 이를 사용하는 다른 페이지가 있을 수 있으니 기존에 사용하던 __ZBXE__ 문은 삭제하지 않도록 하자. (호환성의 문제가 있을 수 있으니..)
** 물론, config.inc.php 를 수정하여 __XE__ 를 define 해주는 등 전역으로 문제를 해결할 수 있는 방법이 있긴 하지만, __ZBXE__가 __XE__ 로 변경되는 것은 공식적인 사항이므로 모듈 페이지를 손을 보는 것이 올바르다.
** 그리고 config.inc.php 와 같은 전역적으로 사용하는 페이지는 수정하지 않는 것이 바람직하다. 또한, xe 패치 시 자동으로 패치가 이루어지는 페이지이기도 하니 되도록이면 손을 대지 않도록 하자.
'IT/Programming > PHP' 카테고리의 다른 글
(PHP) isset() vs empty() vs is_null() (0) | 2014.10.29 |
---|---|
(PHP) $_SERVER['REMOTE_ADDR'] 이 ::1 을 반환할 때 (0) | 2014.10.22 |
PHP 예전 버전 다운로드 (0) | 2014.04.04 |
(PHP) Cannot send session cache limiter - headers already sent (0) | 2013.06.09 |