RX/XE 팁
XE FAQ 는 제가 XE공홈 '묻고 답하기'에 답변한 내용들 중 일부를 정리한 내용입니다. (대부분이 제가 한 답변이죠)
XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠

제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 sejin7940 

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

 

아직 이런 글이 XE Tips 부분등에 올라온게 없는걸 보니..

아직은 유지들이 XE 1.5 로 DB이전한 케이스가 거의 없나보네요. ^^

저와 같은 시행착오 겪으실 분들을 방지하고자, XE 1.5 이상으로 DB이전 툴 제작시 주의하실 점을 적어드립니다.

XE 1.5로 DB 마이그레이션할 경우... 때로는 자료가 일부 안 넘어가는 현상이 발생하는 경우가 있을겁니다.

원인은 XE 1.5 이후부터 강화된 필터(filter) 기능 때문입니다.

XE 1.5 부터는 이메일 및 홈페이지주소 에 관해 형식 필터링이 이뤄지고 어긋날 경우 등록이 아예 안 됩니다.

이는 회원가입시 뿐만 아니라, 글 작성시와 댓글 작성시에 모두 적용되는 사항입니다.

기존 사이트의 이메일주소나 홈페이지 형식이 잘못 된 글들을 그대로 이전시키려하면

결국 이 글들이 다 제외되어버리는 현상이 1.5 로의 이전시 발생하게 되는거죠

제가 테스트해보니, ZB4는 물론이고, 기본의 XE 1.4 버전에서도 이 이메일과 홈페이지 필터링이 안 되어있기에

이메일과 홈페이지가 잘못 기재된 글들이 꽤 있을 수 있는데, 이 글들이 다 이전이 안 된다는거죠

해결하려면, 결국 마이그레이션 툴 자체를 수정해서 이메일이나 홈페이지 형식이 잘못된 경우 해당 값을 삭제하거나..

아니면 XE의 해당 입력 쿼리마다 들어 있는 filter 를 지워버리거나, 아예 필터.js 파일을 수정하시면 됩니다.

(회원가입시 이메일이 필수면, 이메일 주소를 임의로 형성을 하셔야할 수도 있습니다. 아니면 안 넘어갈 수 있어요)

이렇게 필터가 강화되어서 이게 통과가 안 되면 글이 등록이 안 된다는게..안내가 안 되어있고

현재 배포되어있는 DB 이전 툴쪽에는 적용되어있는 예가 없기에..

이렇게 간단히라도 정보를 남겨놓습니다 ^^;;

 

--------------- 내용 추가 합니다 (120203) ----------------

 

이메일 형식등이 잘못 기재되는 유형이 워낙 다양한데다가...

가장 큰 문제는 회원가입시에 이메일이 필수사항이라는 점이죠.. 이메일잘못기재되었다고 강제로 없애면

결국 회원가입이나 로그인등에 큰 문제가 발생하더군요.

 

따라서... 해결책은..

 

modules/document/queries/insertDocument.xml 에서 filter="email" 와 filter="homepage" 를 지우고
modules/comment/queries/insertComment.xml 에서 filter="email" 와 filter="homepage" 를 지우고
modules/member/queries/insertMember.xml 에서 filter="email" 와 filter="homepage" 를 지운 뒤에

DB이전을 하는겁니다. 그러면 이메일주소가 틀려도 전부 다 이전이 될겁니다.

 

회원정보의 경우 유저ID 규칙이 어긋나는 것도 입력되게 하려면

modules/member/queries/insertMember.xml 에서 filter="userid"  부분을 지우면 된다

( 그런데 이걸 지워도 로그인할 때 또 문제는 될거다.  로그인 부분쪽의 userid 규칙도 지워야한다 )

 

 

그 후에 다시 filter 값들을 다 복원해줍니다. (그럼 XE 1.5 에서의 원 의도대로 filter 가 되겠죠)

이제 문제는, 잘못된 이메일주소 등으로 등록된 회원이 글을 쓸 때 발생합니다
회원이 글을 쓰면 회원정보를 기반으로 자동으로 이메일주소와 홈페이지주소가 기재가 되는데
회원정보의 이메일이 잘못 되면, 당연히 글 등록시 필터에 갈려 계속 에러메세지가 발생하게 됩니다
그러나, 글쓴이는 이메일기재란도 없는데, 왜 이런 메세지가 나와 글이 등록이 안 되는지 모르겠죠?

 

common/lang/lang.xml 파일에 가셔서
3452번줄 즈음에.. <item name="invalid_email"> 부분의 언어를 바꿔주시면 됩니다.

<value xml:lang="ko"><![CDATA[%s의 값은 올바른 메일 주소가 아닙니다.]]></value> 부분을
<value xml:lang="ko"><![CDATA[%s의 값은 올바른 메일 주소가 아닙니다.\n만약 회원이시면 회원정보에서 이메일을 수정해주시기 바랍니다]]></value>

 

이런식으로 변경하면 되는거죠.
이 부분은 Core 에 해당되기에, 상황에 따라 XE 업그레이드로 지워질 수도 있는 부분인데 당장은 어쩔 수가 없네요 ^^;

기억해두셨다가, 혹시 Core 로 덮히면 다시 수정해주셔야합니다.

 

이렇게하면, DB이전이 깔끔하게 처리가 되겠네요. ^^;;

 

전체 21건
공지 XE 기능개선 XE 1.11.18 이후 버전의 익명 수정 버그 수정법 xetown  2023.10.07 2756
공지 XE 기능개선 XE 1.11.14 보안패치 - 타인의 쪽지 내용을 확인할 수 있는 버그 패치방법 xetown  2023.10.03 2853
공지 XE 기능개선 XE 1.11.6 이후 보안배치 #4 file rhymix  2022.07.05 2936
공지 1.11.6 XE 1.11.6 이후 보안배치 #3 rhymix  2022.04.02 2927
공지 1.11.6 XE 1.11.6 이후 보안배치 #1 xetown  2021.06.22 3292
공지 1.11.6 XE 1.11.6 이하 에서 공개댓글을 비밀댓글로 변경시 생길 수 있는 오류 수정법 sejin7940  2021.01.10 3222
공지 XE 기능개선 XE 1.11.4 이후에서 파일 업로드시 정상 작동 안 하는 현상 수정법 XE github  2019.04.02 6001
공지 XE 기능개선 php 7.1 환경에서 XE 오류 나는 경우 확인할 사항 sejin7940  2018.07.11 5928
공지 유용정보 php7.2 환경에서 XE 오류가 생기는 경우 - Object 클래스 변경 필요 XE Github  2017.11.27 8270
공지 XE 기능개선 XE 1.8.30 이하에서 반드시 수정해주셔야하는 부분입니다. XE 1.8.31  2017.02.26 6695
공지 1.8.18 XE 1.8.18 에서 사용시 반드시 수정해야할 사항들 ( XE 1.8.20 이후에서는 수정 불필요 ) xetown  2016.04.03 25808
공지 XE 기능개선 XE 1.8.12 이후부터 proc controller 일부가 작동 안 할 경우 확인할 부분 [1] XE  2015.10.16 25627
XE Login