라이믹스/XE에서 넘어오기: 두 판 사이의 차이

Gaon12 (토론 / 기여)
업데이트 방법, 복원 방법 추가
Gaon12 (토론 / 기여)
문서 업데이트
 
1번째 줄: 1번째 줄:
{{인용문|XE보다 빨라졌습니다. PHP 최신 버전의 성능과 캐싱 기술을 십분 활용합니다. 동시접속자 1만 명이 넘는 대형 커뮤니티들도 라이믹스를 적극 도입하고 있습니다.|라이믹스 사이트 내용 중}}
{{인용문|XE보다 빨라졌습니다. PHP 최신 버전(7.4/8.x)의 성능과 캐싱 기술을 십분 활용합니다. 동시접속자 1만 명이 넘는 대형 커뮤니티들도 라이믹스를 적극 도입하고 있습니다.|라이믹스 사이트 내용 중}}


==목표==
==목표==
문서를 통해 [[XpressEngine|XE]]로 운영중인 사이트를 [[라이믹스]]로 전환하는 방법을 서술합니다.
문서는 [[XpressEngine|XE]]로 운영 중인 사이트를 [[라이믹스]]로 '''덮어쓰기(업그레이드) 방식'''으로 전환하는 방법을 서술합니다.


가장 중요한 것은 바로 '''"백업"'''입니다. 작업 전 백업을 꼭 합시다!
가장 중요한 것은 바로 '''"백업"'''입니다. 작업 전 백업을 꼭 합시다.


본 문서는 덮어쓰기 방식을 서술합니다. XML 추출을 통해서도 가능하지만, 불안정적이므로 가장 안정적이고 성공률이 높은 덮어쓰기 방식으로 서술합니다.
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를 백업하는 방법에 대해 간단히 서술합니다.
본 문서에서는 백업 방법을 자세히 서술하지는 않지만, XE가 설치되어 있는 '''폴더'''와 '''DB'''를 백업하는 방법을 간단히 서술합니다.


쉘 명령을 사용하므로 리눅스 서버를 사용하는 경우에는 다음과 같이 백업 할 수 있습니다.
쉘 명령을 사용하므로 리눅스 서버를 사용하는 경우에 다음과 같이 백업할 수 있습니다.


tar.gz 로 압축하며, xe가 설치된 폴더 이름은 "html", 폴더 경로는 /var/www/html<ref>즉 xe가 설치된 폴더에 있는 index.php의 경로는 /var/www/html/index.php가 된다.</ref>로 설정한다고 가정합니다.
tar.gz로 압축하며, XE가 설치된 폴더 이름은 "html", 폴더 경로는 /var/www/html<ref>즉 XE가 설치된 폴더에 있는 index.php의 경로는 /var/www/html/index.php가 된다.</ref>로 설정한다고 가정합니다.


===폴더 백업===
===폴더 백업===
먼저 XE가 설치된 폴더의 상위 폴더로 이동합니다.


먼저 xe가 설치된 폴더의 상위 폴더로 이동합니다.
<syntaxhighlight lang="console">
 
<syntaxhighlight lang='console'>
root@gaon:~# cd /var/www/
root@gaon:~# cd /var/www/
root@gaon:/var/www#
root@gaon:/var/www#
26번째 줄: 43번째 줄:
이후 tar 명령어로 html 폴더를 압축합니다.
이후 tar 명령어로 html 폴더를 압축합니다.


<syntaxhighlight lang='console'>
<syntaxhighlight lang="console">
root@gaon:/var/www# tar cvfpz html.tar.gz html
root@gaon:/var/www# tar -cvpzf html.tar.gz html
</syntaxhighlight>
</syntaxhighlight>


34번째 줄: 51번째 줄:
파일 확인은 다음과 같이 하면 됩니다.
파일 확인은 다음과 같이 하면 됩니다.


<syntaxhighlight lang='console'>
<syntaxhighlight lang="console">
root@gaon:/var/www# ls
root@gaon:/var/www# ls
html html.tar.gz
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>
</syntaxhighlight>


42번째 줄: 68번째 줄:
MySQL, MariaDB에 대해서만 서술합니다.
MySQL, MariaDB에 대해서만 서술합니다.


본 문서에서는 db 이름은 'xe_db'이라고 가정합니다.
본 문서에서는 DB 이름을 'xe_db'라고 가정합니다.
phpmyadmin 등을 이용해 백업해도 됩니다.
phpMyAdmin 등을 이용해 백업해도 됩니다.


<syntaxhighlight lang='console'>
<syntaxhighlight lang="console">
roto@gaon:/var/www# mysqldump -u root -p xe_db > xe_db.sql
root@gaon:/var/www# mysqldump --single-transaction --routines --triggers -u root -p xe_db > xe_db.sql
Enter password:
Enter password:
</syntaxhighlight>
</syntaxhighlight>


Enter password에는 입력한 db 유저의 비밀번호(여기서는 mysql의 root 유저의 비밀번호<ref>OS의 root 계정 비밀번호 아님</ref>)를 입력하면 됩니다.
Enter password에는 입력한 DB 유저의 비밀번호(여기서는 mysql의 root 유저의 비밀번호<ref>OS의 root 계정 비밀번호 아님</ref>)를 입력하면 됩니다.


이후 파일을 확인하려면 아래와 같이 입력하면 됩니다.
이후 파일을 확인하려면 아래와 같이 입력하면 됩니다.
<syntaxhighlight lang='console'>
 
<syntaxhighlight lang="console">
root@gaon:/var/www# ls
root@gaon:/var/www# ls
html html.tar.gz xe_db.sql
html html.tar.gz xe_db.sql
</syntaxhighlight>
</syntaxhighlight>


==XE 버전 확인==
==XE 버전 확인==
현재 설치되어 있는 XE의 버전을 확인합니다. 버전은 관리자 페이지(/admin)로 접속하면 하단에 버전이 표시되어 있습니다.
현재 설치되어 있는 XE의 버전을 확인합니다. 버전은 관리자 페이지(/admin)로 접속하면 하단에 표시되어 있습니다.
 
===버전 < 1.8===
XE 1.8 미만(1.7.x 등)을 사용 중이라면, 먼저 XE를 1.8 이상으로 업데이트해야 합니다.


===버전 < 1.7===
* changed 파일을 사용하여 버전 하나하나씩 업데이트합니다.
1.7 버전(또는 이하)을 사용중이라면 먼저 1.8까지 업데이트합니다. changed 파일을 사용하여 버전 하나하나씩 업데이트합니다.
* 업데이트 이후 오류가 발생하는 경우, 오류를 수정하거나 해당 모듈/애드온을 제거하고 기본 스킨으로 변경합니다.
  * XE에서 오류가 발생하면 이후 라이믹스에서도 오류가 발생할 가능성이 큽니다.


만약 업데이트 이후 오류가 발생하는 경우, 오류를 수정하거나 해당 모듈, 애드온을 제거, 기본 스킨으로 바꾸세요. 오류가 발생하면 이후 라이믹스에서도 오류가 발생합니다.
가능하다면 XE '''마지막 버전(1.11.x)'''까지 업데이트한 후 전환을 권장합니다.


===버전 > 1.8===
===버전 1.8===
버전이 1.8 이상인 경우, [[라이믹스/사양]] 문서를 참고하여 PHP 버전등을 확인하세요. 기본적으로 라이믹스는 PHP 7.0 이상을 사용해야 설치 및 동작합니다.
버전이 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(사용 시) 등 캐시 설정 점검


==만약 복원해야 한다면?==
==만약 복원해야 한다면?==
75번째 줄: 125번째 줄:


===폴더 복원===
===폴더 복원===
<syntaxhighlight lang='console'>
<syntaxhighlight lang="console">
root@gaon:/var/www# tar xvfpz html.tar.gz
root@gaon:/var/www# tar -xvpzf html.tar.gz
</syntaxhighlight>
</syntaxhighlight>


===DB 복원===
===DB 복원===
<syntaxhighlight lang='console'>
<syntaxhighlight lang="console">
root@gaon:/var/www# mysql -u root -p xe_db < xe_db.sql
root@gaon:/var/www# mysql -u root -p xe_db < xe_db.sql
Enter password
Enter password:
</syntaxhighlight>
</syntaxhighlight>


==각주==
==각주==
<references />

2026년 1월 10일 (토) 17:44 기준 최신판

-

XE보다 빨라졌습니다. PHP 최신 버전(7.4/8.x)의 성능과 캐싱 기술을 십분 활용합니다. 동시접속자 1만 명이 넘는 대형 커뮤니티들도 라이믹스를 적극 도입하고 있습니다.

 
— 라이믹스 사이트 내용 중

목표[편집 / 원본 편집]

본 문서는 XE로 운영 중인 사이트를 라이믹스덮어쓰기(업그레이드) 방식으로 전환하는 방법을 서술합니다.

가장 중요한 것은 바로 "백업"입니다. 작업 전 백업을 꼭 합시다.

※ XML 추출 방식으로도 가능하지만, 불안정할 수 있으므로 본 문서에서는 가장 안정적이고 성공률이 높은 덮어쓰기 방식을 기준으로 작성합니다.

작업 전 주의사항[편집 / 원본 편집]

  • 반드시 파일(설치 폴더)과 DB를 각각 백업하고, 가능하다면 백업 복원 테스트까지 수행합니다.
  • 전환 작업 중에는 게시글/댓글/회원가입 등 데이터가 증가하지 않도록 점검 모드(또는 쓰기 중지)를 권장합니다.
  • 라이믹스로 전환 후에는 XE로 되돌리는 “다운그레이드”는 지원되지 않습니다. 되돌려야 한다면 백업 복원으로만 가능합니다.
  • 서드파티 모듈/애드온/스킨 문제로 오류가 발생할 수 있으므로, 전환 전 사용 중인 구성요소 목록을 확보해 두는 것이 좋습니다.

사전 준비(서버 환경)[편집 / 원본 편집]

라이믹스는 XE보다 최신 서버 환경을 요구할 수 있습니다. 전환 전에 아래 사항을 점검합니다.

필수/권장 버전[편집 / 원본 편집]

  • PHP: 7.4 이상 (8.2 이상 권장)
  • DB: MySQL 5.7 이상 또는 MariaDB 10.6 이상
  • 기타 요구사항은 라이믹스/사양 또는 라이믹스 매뉴얼의 설치 환경 문서를 참고합니다.[1]

중요: PHP 업그레이드 순서[편집 / 원본 편집]

  • 전환 “이전”에 최소 PHP 7.4 이상이 되도록 업그레이드합니다. (PHP가 낮으면 라이믹스가 실행되지 않을 수 있습니다.)
  • PHP 8.x 업그레이드는 라이믹스 전환 후 진행하는 것을 권장합니다. (XE 상태에서의 PHP 8.x 호환성은 사이트 구성에 따라 변수가 큽니다.)

백업[편집 / 원본 편집]

본 문서에서는 백업 방법을 자세히 서술하지는 않지만, XE가 설치되어 있는 폴더DB를 백업하는 방법을 간단히 서술합니다.

쉘 명령을 사용하므로 리눅스 서버를 사용하는 경우에 다음과 같이 백업할 수 있습니다.

tar.gz로 압축하며, XE가 설치된 폴더 이름은 "html", 폴더 경로는 /var/www/html[2]로 설정한다고 가정합니다.

폴더 백업[편집 / 원본 편집]

먼저 XE가 설치된 폴더의 상위 폴더로 이동합니다.

root@gaon:~# cd /var/www/
root@gaon:/var/www#

이후 tar 명령어로 html 폴더를 압축합니다.

root@gaon:/var/www# tar -cvpzf html.tar.gz html

그러면 /var/www 경로에 "html.tar.gz"라는 파일이 생성됩니다.

파일 확인은 다음과 같이 하면 됩니다.

root@gaon:/var/www# ls
html  html.tar.gz

(선택) 캐시/세션 등을 제외하고 싶다면 exclude 옵션을 사용할 수 있습니다. 단, 사이트마다 경로가 다를 수 있으므로 충분히 이해한 후 사용하십시오.

root@gaon:/var/www# tar -cvpzf html.tar.gz \
  --exclude='html/files/cache' \
  --exclude='html/files/session' \
  html

DB 백업[편집 / 원본 편집]

MySQL, MariaDB에 대해서만 서술합니다.

본 문서에서는 DB 이름을 'xe_db'라고 가정합니다. phpMyAdmin 등을 이용해 백업해도 됩니다.

root@gaon:/var/www# mysqldump --single-transaction --routines --triggers -u root -p xe_db > xe_db.sql
Enter password:

Enter password에는 입력한 DB 유저의 비밀번호(여기서는 mysql의 root 유저의 비밀번호[3])를 입력하면 됩니다.

이후 파일을 확인하려면 아래와 같이 입력하면 됩니다.

root@gaon:/var/www# ls
html  html.tar.gz  xe_db.sql

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 코어를 업데이트할 때와 마찬가지로 새 코어(라이믹스)로 덮어씌우는 방식으로 전환합니다.[4]

전환 절차[편집 / 원본 편집]

  1. (권장) 별도의 테스트 서버/스테이징에 백업을 복원하여 전환을 먼저 검증합니다.
  2. (운영 서버 작업 시) 점검 모드 또는 쓰기 중지로 데이터 변경을 최소화합니다.
  3. 라이믹스 최신 버전을 다운로드합니다.
  4. XE가 설치된 경로(/var/www/html 또는 웹루트)에 라이믹스 파일을 그대로 덮어쓰기 업로드합니다.
  5. /admin에 접속하여 안내되는 업데이트/DB 변경/캐시 재생성 작업을 모두 수행합니다.
  6. 사이트 메인, 로그인, 글쓰기, 파일 업로드, 메일 발송(사용 시) 등을 점검합니다.

전환 후 권장 점검 항목[편집 / 원본 편집]

  • 관리자 페이지에서 캐시 재생성 후에도 문제가 있으면 files/cache 하위 캐시 정리(상황에 따라) 후 재시도
  • 서드파티 모듈/애드온/스킨 호환성 점검(문제 발생 시 비활성화하여 원인 분리)
  • HTTPS/리다이렉트/리라이트 규칙 등 웹서버 설정 점검
  • PHP OPcache 및 APCu(사용 시) 등 캐시 설정 점검

만약 복원해야 한다면?[편집 / 원본 편집]

복원해야 하는 일이 생긴다면 아래의 순서대로 진행하면 됩니다.

폴더 복원[편집 / 원본 편집]

root@gaon:/var/www# tar -xvpzf html.tar.gz

DB 복원[편집 / 원본 편집]

root@gaon:/var/www# mysql -u root -p xe_db < xe_db.sql
Enter password:

각주[편집 / 원본 편집]

  1. 설치 환경 - Rhymix 매뉴얼
  2. 즉 XE가 설치된 폴더에 있는 index.php의 경로는 /var/www/html/index.php가 된다.
  3. OS의 root 계정 비밀번호 아님
  4. XE 1.x에서 업그레이드 - Rhymix 매뉴얼

최근 바뀜

더 보기