XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠
제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 | sejin7940 |
---|
로그인을 할때
분명 기본URL 을 설정을 해놨는데도
로그인을 할때 '기본 URL 설정이 안 되어 있습니다.' 라는 메세지가 뜨는 경우가 있다.
이게 모든 경우도 아니고 특정 사이트들에서만 벌어지는 이유여서
Core 에 수정사항으로 되어있지도 않고 도대체 뭐가 문제인지 이제까지 몰랐다.
이 현상이 벌어지는 건.. 회원권한 등이 없을때
modules/member/skins/default/login_form.html 파일로 넘어와 로그인창이 떴을때이다
<input type="hidden" name="success_return_url" value="{$referer_url}" />
라는 부분에서 success_return_url 로 $referer_url 변수를 사용한다
즉, 이 페이지에 오게 된 그 직전 페이지의 URL 을 저장해서 전달하게 된다
그런데 '기본 URL 설정이 안 되어 있습니다' 에러가 발생하는 이유는..
classes/module/ModuleHandler.class.php 에서
function init() 함수에서
if($host && ($host != $defaultHost && $host != $site_module_info->domain))
{
throw new Exception('msg_default_url_is_null');
}
부분 때문에 발생하는 현상이다
$success_return_url 값이 $host 로 저장이 되는데
결국 $success_return_url 값과 사이트설정에 저장된 default_url 값이 달라서 생기는 오류이다
그런데 제대로 주소를 입력한 거 같은데 이런 현상이 발생하는 경우가 있다.
이유는 서버에 따라 www 를 인식하느냐 안 하느냐 때문에 생긴 현상이다
이 현상 때문에 로그인이 풀리는 경우가 있어서, 단지 그 로그인 유지에만 문제가 되는 줄 알았는데
권한 없어 생기는 로그인 화면의 경우에 '기본URL 없다는 오류' 해결에도 바로 문제가 된다.
결국 해결방법은
기본URL 로 기재해둔 주소 그대로 ( www 가 있으면 www 를 넣어서, 없으면 빼서 브라우저에 주소를 넣어서 처리해주면 이런 현상이 없어지는데 )
일반 유저들이 이런걸 구별하긴 힘들테니..
결국 www 강제대입 또는 www 강제제거 애드온들을 사용하거나 ( XE 공홈에 배포되어있으니 이걸로 사용하면 된다 )
( 애드온 설정을 위해 관리자 로그인할때 안 되면, 위에 말했듯이 www 를 넣거나 빼는식으로 주소를 다시 써준 후 로그인화면에서 처리하면 로그인된다)