이글이 도움이 될 수 있을지는 모르겠으나 혹시나 해서 글남겨 봅니다.

 

이전에 제작해준 사이트에서 플래시 사용으로 인해 수정을 요청해 주셔서 확인을 했는데, 해당 사이트가 XE 1.4.2.2버전으로 유지를 하고 있었네요.

업데이트가 안되어도 너무 안된 상태였네요.

일단 사용하고 있는 호스팅의 php버전도 낮아서 xe1.11.6으로 업그레이드를 할 수도 없는 상태.

 

그래서 결국 보유하고 있는 서버로 자료를 이전한뒤 작업을 시도함.

플래시 메뉴 부분만 수정할려고 했는데 지인찬스(?) 로 인해 결국 레이아웃 전반적인 작업을 새롭게 해주게 되었네요.

 

1.4버전에서 1.11.6버전으로 업그레이드를 한번에 하면 문제가 발생한다는 것을 알고 있어

1.4버전대에서 1.7 버전이나 1.8버전 1.9버전으로 업그레이드를 하고 1.11.6버전으로 업그레이드 하는 방식으로 해야 한다고 어렴풋이(어떤버전인지 확실히 몰라 차례대로 해봄)  알고 있어서 먼저 1.7버전대로 업그레이드를 했는데 사이이트 먹통이 됨. ㅡㅡ;;

 

그래서 1.8버전대로 업그레이드 시도. 먹통 됨. 

1.9버전대로 업그레이드 시도. 여전히 먹통.

 

이때  간단하게 작업 해주고 끝낼려고 했는데  시간이 걸리는 일이 되겠구나 하는 느낌이 옴.

 

그래서 에라 모르겠다 하고 1.11.6 (XE최신버전) 으로 업그레이드 함.

여전히 먹통됨.

 

1. files 폴더내  캐시폴더를 지우고 db.config.php 파일을 지움.

2. db.config.php파일을 지우면 새롭게 설치화면이 나옴. (XE에서 문제가 생기면 가끔 이 방법으로 해결 함 - 주의 요함.)

3. 새롭게 설치 과정을 거치고 나니 두가지 문제가 발생함.

     가. 회원목록에서 회원리스트가 보이지 않음

     나. 회원그룹이 활성화 되지 않음.

 

참고로 운영하고 있던 곳은 XE기본 모듈, 기본애드온외 별다른 것을 셋팅해서 사용하지 않은 사이트 였습니다.

 

관리자 페이지에서 회원목록이 노출이 되지 않고 회원그룹 부분이 설정이 안되는 원인을 확인해보니 DB에 xe_member  테이블과 xe_member_group 테이블의 구조가 차이가 남을 확인.

 

둘다 list_order라는 필드값이 없음.

 

xe_member 테이블에 list_order 필드 추가후  member_srl값에 - 를 붙혀서 일괄적으로 넣어줌

xe_member_group테이블에 list_order 필드 추가 후 group_srl 값과 동일하게 일괄적으로 넣어줌.

 

이렇게 하고 나니 회원목록 및 그룹관련 설정이 모두 정상적으로 처리됨.

 

 

해당 사이트가 회원가입, 회원그룹, 게시판 글작성 등이 주 목적인 사이트라 다른 체크 사항은 별로 할게 없었네요.

일단 게시글은 정상적으로 잘 나오고 있고, 이미지, 첨부파일 등도 정상임.

 

그외 오래된 위젯으로 인해 안나오는 부분들은 레이아웃 새롭게 작업하면서 일괄적으로 모두 변경을 해준터라 문제 될 부분은 없었습니다.

 

아주 오래된 버전을 최신버전으로 한번에 업그레이드 할때 이런문제가 발생했다는 부분을 공유해 보고자 글 남겨 봅니다.

 

 

 

 

 

똑띠

?
기획, 마케팅, 디자인, 프로그램을 업으로 삼고 생활하고 있습니다.
  • profile

    1.4 버전을 업데이트 할 경우에는 1.5버전의 마지막 버전을 먼저 업데이트 하신다음 1.7으로 넘어가시는게 올바른 방법입니다.

     

    그리고 db.config.php 파일은 잘만 만들어두면 나중에 알아서 새로 옵션이 만들어집니다. 마지막에 업데이트 하시기전에 먼저 사이트 도메인관련설정을 다시한번 더 잡으면 알아서 갱신되는 항목인데 지워서 새로운 설치를 하는 것으로 해결하는건 상당히 위험합니다. 앞으로는 그렇게 하지마시고 먹통되는 오류내역 확인후 고치시길 바랍니다..

     

    전반적으로 업데이트 과정에서 직접 테이블을 만들고 수정하는 방법이 포함되어 있는데 이는 권장 드리는 사항이 아닌지라.. 정석대로 업데이트 하시는 것이 더 좋습니다. 오류나는 항목은 왜 오류가 났는지 반드시 거기에 이유가 있으니 그거부터 해결하시고 업데이트 하시는 것이 올바른 선택이고요..

  • profile ?

    댓글을 보니 자칫 잘못 이해하고 1.4버전대에서 1.11.6버전을 덮어 씌우고 저처럼 해보라고 하는 팁으로 오해 할수도 있겠네요.

    저 같은 경우엔 XE로 사이트를 100개 넘게 만들고 수정하고 관리하면서 그동안 쌓인(?) 나름의 노하우가 있다보니 db.confg.php파일 삭제나 기타 문제들에 대한 해결책을 나름 알고 있다보니 이런식으로 진행을 했던것이고,
    다른 분들은 람보님 말씀처럼 조심하셔야 합니다.

    저야 이렇게 해보고 안되면 DB자료를 바탕으로 어떻게든 살릴 수 있다보니 그냥 빠르게 처리할려고 이런식으로 했던거구요.
    저도 1.4버전대에서 1.11.6버전으로 한번에 업그레이드 하는건 처음 해본터라 에피소드 겸 올린 내용입니다.

  • ? profile

    조심스럽게 말씀드리자면요.

    글과 댓글을 봤을때 뭔가.. 노하우라기보단 오류를 숨겨주는 항목을 만들어주는 빌미를 제공하시는 것 같다는 느낌이 들어요 ㅠㅠ..

    XE나 라이믹스나 백지가 된다는 항목은 어딘가 오류가 있다고 나오는 것이고 그걸 브라우저에서 확인해보면 정확히 어떤 종류의 오류인지 나옵니다. 403, 500, 이런코드로요..

    보통은 업데이트 과정에서 생기는 에러들이 500에러같은 종류일거예요

    일반적으로 캐시파일 재생성 및 정상적인 방법으로 진행을 깔끔하게 잘하면 문제 없이 넘어가야 하는게 정상인데, 1.4 버전대의 XE의 경우 업데이트 과정에서 반드시 문제가 생기지 않는다는 보장이 없지요.

    따라서 업데이트 하는 과정에서 발생하는 버그는 직접 고쳐야 문제 없이 진행이 가능합니다.

    정석적인 방법은 직접 테이블을 고치는것이나 db.config.php 파일과 같은 항목들을 고치는 것이 아니라 XE소프트웨어 측에서 안전하게 업데이트 할 수 있게 해야하는것이고 직접 유저가 디비정보를 변경하거나 테이블을 만들고 내용들을 넣지 않아야 합니다.

    그리고 해당 글과 비슷한 글들을 보시고 많은 사용자분들께서 업데이트 하시는데 잘못된 선택으로 사이트를 날려먹는 상황도 많이 연출되기도 해요 ㅠ_ㅠ 최근에도 몇분 봤고요 ㅠ_ㅠ.......

    이런 업데이트 관련 글들은 팁이던 아니던 검색시 노출되는 인터넷환경에서는 정확한 정보를 재대로 전달해줄 필요가 있습니다.

    글의 첫 시작을 "도움이 될 수 있을지 모르겠으나"라고 운을 띄워 시작하셨기 때문에 팁에 가까운 글로 보여져, 정확한 정보를 바로 잡을 필요가 있다고 생각되어 댓글을 남겨드렸습니다 (_ _ )

  • profile ?
    분명 저같이 하시는 분들이 있으실거에요. 그리고 그분들중에는 람보님처럼 XE나 라이믹스에 대해 잘 아시는 분들이 아닐수도 있구요.
    그분들에게 제가 적은글이 문제 해결에 대한 길잡이는 될 수 있을거라 생각을 해서 글을 남긴것입니다.
    모든 사람들이 버그를 직접 수정하면서 문제를 해결 할 수 있다면 상관없겠지만 그런 능력이 안되시는 분들이 더 많지 않을까 생각을 합니다.
    업데이트 방법에 있어 "정답"을 제가 적은 것이 아니라 이런경우도 있었다고 이야길 하고 있는 상황입니다.
  • ? profile
    네! 제가 말씀드린 부분이 그 점입니다.

    모두가 저와 같이 문제해결할 수 있는 능력이 되지 않습니다. 그런 경우 질답게시판을 이용하여 상황과 함께 본인의 에러로그를 정확하게 남겨주신다면 충분히 해결할 수 있는 에러일 것입니다. 에러로그 확인이 어려우다면 타운에 질답게시판을 이용하여 에러로그 확인방법을 먼저 알아볼 수도 있고요.

    이렇게 차근차근 버전을 하나씩 올리고, 정석대로 하다보면 막히는 부분이 딱 눈에 보이는 것이 당연지사인데 이를 숨겨서 해결하게 된다면 뒤쪽으로는 그 버그를 안고 가는 것이기 때문에 초보일수록 이런 실수를 많이 할 수 있다는 점이 문제가 될 수 있다는 뜻이예요.

    다소 제 댓글로 인해 이 글이 100프로 전부 다 틀렸다 이런 논의로 보여지는 것에 똑디님에게 죄송스럽기도 합니다.

    하지만 그렇게 보시기 보다 올바른 업데이트 가이드를 정확하게 제공하고자 하는 의미로 받아들어주시면 좋겠습니다ㅠㅠ

    타운에 질답게시판을 충분히 활용하면서 업데이트의 대한 경험담이 재대로 나온다면 모든 사용자에게 좋은 콘텐츠가 나오지 않을까 하는 마음에 댓글을 달게 되었습니다ㅠ_ㅠ
  • profile ?
    네.람보님께서 하시는 말씀이 무슨 의미인지 잘 알고 있습니다.
    누군의 소중한 자료가 자칫 잘못된 노하우로 인해 날아갈 수 도 있으니까요.

    아마 다른 분들이 이글에 적힌 댓글들까지 참고 하시면 업데이트시 도움이 좀 되지 않을까 싶네요.
  • profile

    컬럼이 누락되었을 때는 관리자 대시보드에서 모듈 업데이트가 뜨는 것으로 알고 있는데요. XE도 버전 차이가 너무 많이 나면 이 부분이 제대로 작동하지 않는 것일까요? 아니면 오류가 너무 많아서 해당 화면에 진입하기조차 어려우셨던 건지...

     

    운영자분이 열정을 가지고 꾸준히 관리하시는 사이트라면 오히려 이런 문제가 발생하지 않을 텐데, 만들기만 하고 사실상 방치된 사이트가 너무 많지요. XE 최고의 리즈시절이 1.4였던지라... ㅠㅠ

  • profile ?
    처음엔 1.4버전대 최종버전으로 아마 한번 업그레이드를 했다가 사이트가 먹통이 되어서 1.7버전대로 로 덮어 씌웠었던것 같네요..
    그때부터 인덱스 자체가 열리지 않는 상황이고 관리자페이지 조차 접근이 안되어서.
    거기다가 호스팅 용량도 적고 php버전도 낮고 이런 저런 문제가 있어서 아예 호스팅을 이전하면서 1.11.6버전으로 바로 덮어씌워 처리를 한것이네요.
    그래도 XE로 계속적으로 사이트를 만들고 관리해온 터라 업그레이드 관련해서는 크게 우려를 안해서 그렇게 진행을 했었네요.
    글을 적었던 이유도 저 같은 경우엔 아예 낮은 버전에서 업그레이드를 했는데 생각보다 문제가 없어서(?) 글을 적었습니다.
    참고로 다음에 이런 상황이 발생하면 이젠 전 이 방법을 쓸듯 싶네요.
    물론 비엔유님 말씀처럼 "백업"은 필수로 해두고 진행을 해야겠고.
    항상 예외는 있으니.
  • ? profile
    아, 대시보드 진입 자체가 안 되는 상황이었군요. 그러면 어쩔 수 없지요...

    [팁] 라이믹스로 업글하실 경우, 대시보드가 열리지 않거나 타임아웃이 걸리더라도 서버에 ssh로 접속해서 common/scripts/update_all_modules.php 를 실행하면 업데이트가 적용됩니다. 단, 라이믹스는 1.4에서 2.0으로 직접 업그레이드가 안 되기 때문에 1.9.9.9에서 먼저 실행하셔야...
  • ?

    쌓인 데이터가 많은 1.4.x를 1.11.x로 저도 한 번에 올렸었습니다. 오래된 마이그레이션 코드를 그대로 가지고 있어서 너무 많은 처리량 때문에 중단되지만 않으면 별 문제 없이 디비 변경 사항은 중간중간 버전을 타고 올라오나 한번에 올라오나 별 차이는 없죠. 소스와 디비를 복제해서 업데이트 작업할 로컬 서버 환경만 잘 대비해두면 됩니다.

     

    문제 해결법을 아는 사람은 그냥 한 번에 올라오면 됩니다. 중간 버전 타고와도 어차피 똑같은 문제는 생기거거든요. 문제 해결법을 모르면 한번에 올라오나 중간버전을 타고오나 차이는 없다고 봐도 됩니다. 어차피 문제는 발생하기 때문에 중요한 건 문제해결법을 아느냐이죠. 이를 아는 사람에게 의뢰하는 게 낫습니다. 

    똑띠님이 언급한 db.config 파일의 포맷이 변경과 Object -> BaseObject로 변경해야할 부분 등 자잘한 문제도 해결해주면 됩니다.

    단, 운영 중인 사이트에서하면 반드시 문제가 발생하므로 복제하여 비운영 상태에서 업그레이드 후 정상화 시키고 소스와 디비를 다시 옮겨가야 합니다. 똑띠님이 하신 것처럼...

     

    일부 필드가 없는 건 1.11 소스로 덮기 전에 관리자 로그인 상태로 관리자 대시보드 열어두고 진행해야 합니다. 대시보드에서 업데이트 눌러줘야하는데 로그인이 안 될 수 있거든요. 

  • ? profile
    아는 사람이라면 가능하지만.. 대부분의 유저들이 포맷변경 및 이런 방법들을 잘 모르는 상태에서 진행하는 경우가 많아서 문제가 발생하는 경우가 많은 것 같아요.

    중요한건 비누님께서 말씀하신 제일 마지막 관리자 대시보드 열어둔 상태에서 캐시파일 재생성 및 업데이트 버튼을 차근차근 눌러주는 작업만 각 버전별로 잘 해낸다면 필드 문제는 없을것 같고, 그외 백지에 따른 오류를 정확하게 잡아주는것이 가장 중요하죠 ㅎㅎ
  • profile

    DB 편집은 해야 할때는 하는 것이 좋죠. XE 공홈에 보면 사용자 매뉴얼이 1.0이 있는데, (오래되었지만 요즘 참고해도 문제 없을만큼 잘 되어 있음), 거기 보면 상당히 자세하게 설명되어있고 아주 잘되어 있어 일반 분들도 읽어보면 도움이 많이 될것 같습니다. 거기 설명의 절반 이상이 DB 편집하는 방법으로 되어 있죠. 업그레이드가 자동으로 되면 좋으나 안될때는 무슨 버전을 깔고 그다음 뭘 깔고 해도 되겠지만, 그냥 DB를 수정하는게 확실한 방법이 될수도 있습니다. 무식하지만 가장 확실한 방법...

     

    분량이 엄청날것 같지만 제가 해본바로는 30분만 투자하면 1:1 비교 가능합니다. 즉, 사망한 홈피도 30분만 투자하면 살릴수 있다는  뜻이죠... ㅎㅎㅎ

  • profile
    무식하면 용감하다고, 아무런 정보가없던 저는 1.44데이터를 업그레이없이 xml로 추출후, 다른서버에 1.11.9를 설치하고 별다른 오류없이 xml을 임포트 했습니다.
    마지막 회원데이터가 들어오질 않았는데 import 모듈? 에서 간단하게 이메일관련코드 한줄만 수정하니 모든정보가 정상적으로 다 들어왔습니다.
  • profile profile

    ㄷㄷㄷㄷ다행이네요