귀하는 로그인되어 있지 않습니다. 이대로 편집하면 귀하의 IP 주소가 편집 기록에 남게 됩니다.스팸 방지 검사입니다. 이것을 입력하지 마세요!{{인용문|XE보다 빨라졌습니다. PHP 최신 버전(7.4/8.x)의 성능과 캐싱 기술을 십분 활용합니다. 동시접속자 1만 명이 넘는 대형 커뮤니티들도 라이믹스를 적극 도입하고 있습니다.|라이믹스 사이트 내용 중}} ==목표== 본 문서는 [[XpressEngine|XE]]로 운영 중인 사이트를 [[라이믹스]]로 '''덮어쓰기(업그레이드) 방식'''으로 전환하는 방법을 서술합니다. 가장 중요한 것은 바로 '''"백업"'''입니다. 작업 전 백업을 꼭 합시다. ※ XML 추출 방식으로도 가능하지만, 불안정할 수 있으므로 본 문서에서는 가장 안정적이고 성공률이 높은 '''덮어쓰기 방식'''을 기준으로 작성합니다. ==작업 전 주의사항== * '''반드시''' 파일(설치 폴더)과 DB를 각각 백업하고, 가능하다면 '''백업 복원 테스트'''까지 수행합니다. * 전환 작업 중에는 게시글/댓글/회원가입 등 데이터가 증가하지 않도록 '''점검 모드(또는 쓰기 중지)'''를 권장합니다. * 라이믹스로 전환 후에는 '''XE로 되돌리는 “다운그레이드”는 지원되지 않습니다.''' 되돌려야 한다면 '''백업 복원'''으로만 가능합니다. * 서드파티 모듈/애드온/스킨 문제로 오류가 발생할 수 있으므로, 전환 전 '''사용 중인 구성요소 목록'''을 확보해 두는 것이 좋습니다. ==사전 준비(서버 환경)== 라이믹스는 XE보다 최신 서버 환경을 요구할 수 있습니다. 전환 전에 아래 사항을 점검합니다. ===필수/권장 버전=== * PHP: '''7.4 이상''' ('''8.2 이상 권장''') * DB: MySQL '''5.7 이상''' 또는 MariaDB '''10.6 이상''' * 기타 요구사항은 [[라이믹스/사양]] 또는 라이믹스 매뉴얼의 설치 환경 문서를 참고합니다.<ref>[https://rhymix.org/manual/introduction/requirements 설치 환경 - Rhymix 매뉴얼]</ref> ===중요: PHP 업그레이드 순서=== * '''전환 “이전”에 최소 PHP 7.4 이상'''이 되도록 업그레이드합니다. (PHP가 낮으면 라이믹스가 실행되지 않을 수 있습니다.) * PHP 8.x 업그레이드는 '''라이믹스 전환 후''' 진행하는 것을 권장합니다. (XE 상태에서의 PHP 8.x 호환성은 사이트 구성에 따라 변수가 큽니다.) ==백업== 본 문서에서는 백업 방법을 자세히 서술하지는 않지만, XE가 설치되어 있는 '''폴더'''와 '''DB'''를 백업하는 방법을 간단히 서술합니다. 쉘 명령을 사용하므로 리눅스 서버를 사용하는 경우에 다음과 같이 백업할 수 있습니다. tar.gz로 압축하며, XE가 설치된 폴더 이름은 "html", 폴더 경로는 /var/www/html<ref>즉 XE가 설치된 폴더에 있는 index.php의 경로는 /var/www/html/index.php가 된다.</ref>로 설정한다고 가정합니다. ===폴더 백업=== 먼저 XE가 설치된 폴더의 상위 폴더로 이동합니다. <syntaxhighlight lang="console"> root@gaon:~# cd /var/www/ root@gaon:/var/www# </syntaxhighlight> 이후 tar 명령어로 html 폴더를 압축합니다. <syntaxhighlight lang="console"> root@gaon:/var/www# tar -cvpzf html.tar.gz html </syntaxhighlight> 그러면 /var/www 경로에 '''"html.tar.gz"'''라는 파일이 생성됩니다. 파일 확인은 다음과 같이 하면 됩니다. <syntaxhighlight lang="console"> root@gaon:/var/www# ls html html.tar.gz </syntaxhighlight> (선택) 캐시/세션 등을 제외하고 싶다면 exclude 옵션을 사용할 수 있습니다. 단, 사이트마다 경로가 다를 수 있으므로 충분히 이해한 후 사용하십시오. <syntaxhighlight lang="console"> root@gaon:/var/www# tar -cvpzf html.tar.gz \ --exclude='html/files/cache' \ --exclude='html/files/session' \ html </syntaxhighlight> ===DB 백업=== MySQL, MariaDB에 대해서만 서술합니다. 본 문서에서는 DB 이름을 'xe_db'라고 가정합니다. phpMyAdmin 등을 이용해 백업해도 됩니다. <syntaxhighlight lang="console"> root@gaon:/var/www# mysqldump --single-transaction --routines --triggers -u root -p xe_db > xe_db.sql Enter password: </syntaxhighlight> Enter password에는 입력한 DB 유저의 비밀번호(여기서는 mysql의 root 유저의 비밀번호<ref>OS의 root 계정 비밀번호 아님</ref>)를 입력하면 됩니다. 이후 파일을 확인하려면 아래와 같이 입력하면 됩니다. <syntaxhighlight lang="console"> root@gaon:/var/www# ls html html.tar.gz xe_db.sql </syntaxhighlight> ==XE 버전 확인== 현재 설치되어 있는 XE의 버전을 확인합니다. 버전은 관리자 페이지(/admin)로 접속하면 하단에 표시되어 있습니다. ===버전 < 1.8=== XE 1.8 미만(1.7.x 등)을 사용 중이라면, 먼저 XE를 1.8 이상으로 업데이트해야 합니다. * changed 파일을 사용하여 버전 하나하나씩 업데이트합니다. * 업데이트 이후 오류가 발생하는 경우, 오류를 수정하거나 해당 모듈/애드온을 제거하고 기본 스킨으로 변경합니다. * XE에서 오류가 발생하면 이후 라이믹스에서도 오류가 발생할 가능성이 큽니다. 가능하다면 XE '''마지막 버전(1.11.x)'''까지 업데이트한 후 전환을 권장합니다. ===버전 ≥ 1.8=== 버전이 1.8 이상인 경우에도, 전환 전 아래를 권장합니다. * 가능하다면 XE를 '''최신 1.11.x'''까지 업데이트 * 관리자 첫 화면에서 '''업데이트 및 DB 생성'''(모듈 업데이트 포함으로 안내되는 항목)을 모두 완료 * [[라이믹스/사양]]을 참고하여 PHP/DB 버전이 요구사항을 만족하는지 확인 ==라이믹스로 전환(덮어쓰기)== 라이믹스는 XE 코어를 업데이트할 때와 마찬가지로 '''새 코어(라이믹스)로 덮어씌우는 방식'''으로 전환합니다.<ref>[https://rhymix.org/manual/introduction/xe-upgrade XE 1.x에서 업그레이드 - Rhymix 매뉴얼]</ref> ===전환 절차=== # (권장) 별도의 테스트 서버/스테이징에 백업을 복원하여 전환을 먼저 검증합니다. # (운영 서버 작업 시) 점검 모드 또는 쓰기 중지로 데이터 변경을 최소화합니다. # 라이믹스 최신 버전을 다운로드합니다. # XE가 설치된 경로(/var/www/html 또는 웹루트)에 '''라이믹스 파일을 그대로 덮어쓰기 업로드'''합니다. # /admin에 접속하여 안내되는 '''업데이트/DB 변경/캐시 재생성''' 작업을 모두 수행합니다. # 사이트 메인, 로그인, 글쓰기, 파일 업로드, 메일 발송(사용 시) 등을 점검합니다. ===전환 후 권장 점검 항목=== * 관리자 페이지에서 캐시 재생성 후에도 문제가 있으면 files/cache 하위 캐시 정리(상황에 따라) 후 재시도 * 서드파티 모듈/애드온/스킨 호환성 점검(문제 발생 시 비활성화하여 원인 분리) * HTTPS/리다이렉트/리라이트 규칙 등 웹서버 설정 점검 * PHP OPcache 및 APCu(사용 시) 등 캐시 설정 점검 ==만약 복원해야 한다면?== 복원해야 하는 일이 생긴다면 아래의 순서대로 진행하면 됩니다. ===폴더 복원=== <syntaxhighlight lang="console"> root@gaon:/var/www# tar -xvpzf html.tar.gz </syntaxhighlight> ===DB 복원=== <syntaxhighlight lang="console"> root@gaon:/var/www# mysql -u root -p xe_db < xe_db.sql Enter password: </syntaxhighlight> ==각주== <references /> 편집 요약 가온 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는 가온 위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요. 또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다. 저작권이 있는 내용을 허가 없이 저장하지 마세요! 취소 편집 도움말 (새 창에서 열림) 이 문서에서 사용한 틀: 틀:인용문 (편집)