오늘 로그인이 잘 안되고 첨부파일이 업로드되지 않고 게시판 문서들이 사라지는 현상이 생겨 호스팅업체 연락하여 원인 분석을 의뢰한 결과 아래와 같이 연락이 왔다. 그래서 XE 홈검색 결과 아래와 같은 팁이 있다. 이를 적용해봐야 겠다.


서버에 에러로그가 엄청 쌓이고 있습니다.

에러내용은

[Thu Mar 03 04:02:26 2016] [error] [client 141.8.142.28] PHP Warning:  Call-time pass-by-reference has been deprecated - argument passed by value;  If you would like to pass it by reference, modify the declaration of [runtime function name]().  If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file.  However, future versions may not support this any longer.  in /---/subkorea/---/xe/classes/db/DBMysql.class.php on line 487


이것입니다. 조치를 취해 주세요. 하루에 에러로그만 3G 이상 쌓였습니다.

계속 쌓이고 있습니다.


-----------------


warning: call time pass by reference 에러 해결 방법 by ezi

https://www.xpressengine.com/tip/19904040


xe 소스 코드를 보시면..

function _filterNumber(&$value) 함수가 있습니다.(이함수말고도 여러 함수가 있음)


php 상위 버전에서는 함수를 호출할때에 &를 쓰지 않도록 해야하고(deprecate되었으므로)

위와 같이 함수 선언을 해놓았기때문에 &를 쓰지 않아도 됩니다.

위 함수말고 다른 함수도 있지만.. 찾기 귀찮아서 임시방편으로 아래와 같이 코드를 추가해주시면됩니다.


XE 1.4.5.7 기준..

xe/index.php


define('__ZBXE__', true); 다음행에 아래 코드 추가..


@ini_set('display_errors', 0);