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

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

 

I. 서버이전 준비 

 

1. 파일질라 FTP클라이언트 프로그램을 준비하세요.

    FTP클라이언트가 필요합니다. 알FTP는 사용하지 마시고 반드시
    파일질라(무료) 와 같은 다른 전용 프로그램을 이용하십시오.

 

2. Putty 와 같은 SSH 프로그램을 준비하세요.

 

    DB와 계정의 파일들을 백업하기 위해서 반드시 필요한 프로그램입니다.
    코덱스(codex.kr) 과 같이 일부 전용 cPanel 을 제공하는 호스팅업체라면 SSH프로그램이 필요하지 않을수 있습니다.
    또한, SSH를 지원하지 않는 호스팅이용자분들은 서버관리자에게 계정 백업을 요구하셔야 합니다.
    FTP프로그램으로 XE를 직접 내려받는 식으로 백업을 해 두시면
    첨부파일과 이미지파일들이 모두 깨지는 문제가 발생합니다. (첨부파일 암호화 / 파일명 UTF-8 때문)

 

3. 새로 이전하려는 호스팅업체의 서버 환경을 확인하세요.

 

    PHP 4.x ~ 5.x (단 PHP 5.2.2 버전에서는 사용할 수 없음), XML 라이브러리, GD 라이브러리가 사용가능한지 확인하시고,

    MySQL 의 버전이 4.1 이상인지 확인하세요.

 

 

 

 

 II. 주의사항 (필독) 

 

 

1. FTP 를 이용할 때에는, 알FTP 는 절대 사용하지 마세요. [필수]

 

    FTP 로 파일을 전송하다 보면, 서버환경에 따라 파일이 누락되는 경우가 있습니다.
    이는 상당히 빈번히 일어나는 일로, 누락된 파일만 다시 재업로드 할수 있는 FTP 툴이 필요합니다.
    알FTP 는 이러한 부분에서 상당히 취약합니다. 전송에 실패한 파일을 재전송할 수 있는 기능이 없습니다.
    따라서, 해당 기능이 있는
Filezilla (무료) 등과 같은 다른 FTP 클라이언트를 이용하셔야 합니다.

 

2. 서버 이전 이후에는 캐쉬폴더를 삭제해 주어야 합니다.

 

    서버 이전 직후에 레이아웃이 일그러지거나 관리자모드에 로그인이 되지 않는 등의 문제가 발생할 수 있습니다.

    이는 이전 서버의 환경에서 생성된 cache 폴더와 파일들이 일으키는 문제가 대부분이어서

    cache 폴더를 삭제 해주면 해결될 수 있는 문제입니다.

 

3. 계정 파일들의 백업은 FTP 로 직접 다운받는 방식으로는 하면 안됩니다.

 

    첨부파일 중, 이미지 파일 말고, 압축파일인 경우에는

    우선 DB 상으로는 XE_files 에 저장됩니다.

    그러나 실제적인 파일의 업로드는 암호화되어 XE폴더 -> files -> attach -> binaries 폴더 안에 저장됩니다.

    폴더번호는 일련의 규칙에 따라 생성되어 저장되게 됩니다.

  

    그런데, 이 폴더의 파일들을 백업하여 복원할 때 문제가 발생합니다.

    XE를 계정이전하거나 백업후 복원할 때,

    리눅스명령어 (tar cvf / tar xvf ) 를 사용하지 않고

    FTP 로 직접 파일들을 다운받아 백업하고, FTP 업로드를 통해 업로드를 하는 경우

    암호화되어 저장된 파일의 속성이 변경되어 버리는 문제가 있습니다.

    .exe 등과 같은 일반 파일들의 경우 큰 문제가 없는것 같으나,

    .zip, .rar, .alz, .tar 등 모든 압축파일은 문제가 생깁니다.

 

    따라서, 만일 SSH가 지원되지 않는 계정을 이용중이시라면

    반드시 서버관리자 / 호스팅업체에 데이터백업 을 해 줄 것을 요청하셔야 합니다.

 

 4. files 폴더만 백업해서 옮기면 된다는데요?

 

    그래도 되긴 합니다. 그러나 이렇게 하면 만들어두었던 레이아웃, 위젯스킨들이 모두 적용되지 않습니다.

    망가지는 것은 아닌데, 제대로 적용되게 해서 완전히 똑같이 옮기려면

    레이아웃폴더, 모듈폴더, 애드온폴더, 위젯폴더, 위젯스타일 폴더 등을 같이 옮기셔야 합니다.

    결국 xe 를 통채로 백업하는 것이 더 간편하고 쉽습니다.

 

 

 

 

 III. 서버인전 시작하기 

 

 

1. 외부에서 이전하려는 홈페이지로 접속하지 못하도록 임시 페이지를 만드세요. [필수]


 이용량이 많은 사이트라면, 업데이트 도중에 외부의 접속을 막기 위해, 첫화면을 XE 와 관계없는 html 페이지를
 임시로 만들어, 최초 접속시 해당 페이지가 나오도록 하세요. (공사중, 업데이트 중, 등등의 안내 페이지)


 

2. 기존에 사용하던 호스팅업체의 SSH 로 로그인을 하세요.

 

3. ls 라고 입력하여 자기가 사용하는 호스팅업체의 루트 폴더 이름을 확인하세요.

 -   html, www, public_html 등의 폴더가 이에 해당합니다.

 

4. 계정의 파일들을 백업할 것입니다. 압축명령어를 실행해 주세요.

       tar cvfpz backup.tar.gz html

 

      이라고 입력하였는데,

      tar cvfpz : cvfpz 라는 추가명령어를 포함하여, 압축하라

      backup.tar.gz : backup 이란 파일명으로 tar.gz 라는 압축파일을 만들어라.

      html : 백업하려는 폴더 이름은 html 이다.

      라는 뜻입니다.

 

      따라서, 위와 이 글을 읽으시는 분들은 본인의 계정환경에 맞게, tar cvfpz 이후의 명령어는 바꿔 입력하시면 됩니다. 

 

 

5. DB를 백업할 것입니다. DB백업 명령어를 실행해 주세요.

 

    mysqldump -u ID -p DBname > backup.sql

 

    이라고 입력하였는데,

    mysqldump : mysql DB를 백업할 것이다.

    -u ID : user는 ID 이고,

    -p : 비밀번호는 조금있다가 입력할 것이다. (저 명령어를 넣은 후 엔터 치면, Enter Password 라고 비밀번호 입력칸이 나옵니다)

    DBname : 본인의 DB명을 입력하시면 됩니다.

    > backup.sql : 그 DB명에 있는 테이블들을 backup.sql 파일로 저장할 것이다.

    라는 뜻입니다.

 

    DB백업 방법은 이 외에도 phpmyadmin 에서 하는 방법이 있습니다.

    이 방법은 검색하시면 쉽게 아실 수 있습니다.

 

 

6. 이제 FTP 로 계정에 접속해 보세요.

 

    위 3번, 4번 과정에서 만든 backup.tar.gz 파일과 backup.sql 파일이 있을 겁니다.

    이 두 파일을 컴퓨터로 내려받으세요.

    이 파일들을 새 계정으로 옮길 것입니다.

 

 

7. 옮기려는 새 계정의 FTP로 접속하세요.

 

    그리고 컴퓨터로 내려받을 위의 두 파일을 업로드 하세요.

    업로드 할 때에는, FTP 접속 후에 나오는 폴더에 바로 하시는 것 보다,

    public_html 혹은 www 혹은 html 등의 root 폴더 안에 하시는 것이 좋습니다.

    8번부터 이어지는 설명은 root 폴더 안에 넣었다고 가정하고 진행하겠습니다.

 

 

8. 새로 옮길 계정의 SSH 로 로그인 하세요.

 

9. ls 라고 입력하여, root 폴더를 확인하세요.

 

10. 복원하려는 두 파일 (backup.tar.gz / backup.sql) 이 있는 root 폴더로 이동하세요.

 

   이동하는 방법은, cd public_html 을 입력하고 엔터를 치면 됩니다.

    public_html 대신, 본인의 root 폴더를 입력하면 되겠죠.

 

 

11. ls 를 입력하여 복원하려는 두 파일(backup.tar.gz / backup.sql)이 존재하는지 확인해 보세요.

 

12. 이제 계정의 파일들의 압축을 해제할 겁니다. 압축해제 명령어를 입력하세요.

  

    tar xvfpz backup.tar.gz

 

    라고 입력했는데,

    tar xvfpz : vfpz 라는 추가 명령어를 포함하여 압축을 해제할 것이다.

    backup.tar.gz : 압축해제 대상은 backup.tar.gz 파일이다.

    라는 뜻입니다.

 

    따라서, 본인이 압축했던 파일 명을 tar xvfpz 뒤에 입력하면 됩니다.

 

 

13. 이제 DB를 복원할 것입니다. DB복원 명령어를 입력하세요.

 

    mysql -u ID -p DBname < backup.sql

 

    이라고 입력하였는데,

    mysql : mysql서버를 불러올 것이다.

    -u ID : user는 ID 이고,

    -p : 비밀번호는 나중에 입력할 것이다.

    DBname < backup.sql  : backup.sql 파일에 있는 내용들을 DBname 이라는 DB명에 넣을 것이다.

    라는 뜻입니다.

 

    주의할 점은, 백업할때 사용하였던 mysqldump 와 명령어가 다릅니다. mysqldump 가 아닌 mysql 입니다.

    또한 여기서 입력하는 ID, 비밀번호, DBname 등은 이전에 사용하던 계정의 정보가 아니라

    새 계정의 정보에 맞게 입력하셔야 합니다.

 

 

14. FTP로 접속하여 파일과 폴더들을 옮겨주셔야 합니다.

 

    지금까지의 과정을 이행하셨다면, FTP 로 새 계정에 접속 했을 때

    root 폴더 (저같은 경우, public_html)가 나오고 그 폴더로 들어가면

    이전에 사용하던 루트폴더(저의 경우, html)가 또 있을 겁니다.

    그리고 그 폴더 안으로 들어가야 비로소 이전 계정에 있던 폴더들이 보일 겁니다.

 

    새 계정 FTP접속 > 루트폴더 > 이전에 사용하던 계정의 루트폴더 > 폴더와 파일들

 

    이렇게 있는 셈인데,

    폴더와 파일들루트폴더 바로 밑으로 옮겨야 합니다.

 

    옮기는 방법은

    이전에 사용하던 계정의 루트폴더 로 이동한 후,

    그 안에 있는 폴더와 파일들을 모두 선택하세요.

    그 후, 그 상위폴더로 드래그 앤 드롭 하시면 됩니다.

 

   (주의)  옮기기 이전에 숨김파일을 강제표시 하게 한 후 하셔야 합니다!!

   

 

 

15. 새로 이사한 계정으로 옮긴 XE > files 폴더 안에 있는 cache 폴더를 삭제해야 합니다.

 

    FTP나 SSH로 접속하여 xe 폴더 > files 폴더 안에 있는 cache 폴더를 통채로 삭제해 주십시오.

    SSH 에서 cache 폴더를 삭제하는 방법은,

    cd 명령어로 files 폴더 까지 이동한 후 rm -rf cache 라고 입력하면 됩니다.

 

    순서대로 따라하셨다면 권한 문제가 발생할 일은 없지만,

    만일 권한문제로 인해 삭제가 되지 않는다면

    http://www.xpressengine.com/18445192문서의 5번 문항을 참고하여 cache 폴더를 삭제해 주세요.

 

 

16. xe폴더 > files > config 폴더 안에 있는 db.config.php 파일을 수정해야 합니다.

 

    FTP로 접속하여 db.config.php 파일을 컴퓨터로 내려받으세요.

    메모장이나 editplus 등으로 여신 후,

 

    $db_info->db_hostname = 'localhost';
    $db_info->db_userid = 'OOOOOOO';
    $db_info->db_password = 'OOOOOOOO';
    $db_info->db_database = 'OOOOOOOOO';

 

    부분을 새 계정의 정보에 맞게 입력하세요.

     hostname 의 경우 대부분이 localhost 를 사용하지만,

     일부 호스팅에서는 다른 값을 요구할 수도 있으니

     해당 서버환경에 맞게 입력하세요.

 

     수정이 끝나셨으면 저장하시고 xe > files > config  폴더에 업로드 하여 덮어 씌우세요.

 

     만일 권한문제로 업로드가 되지 않는다면

     http://www.xpressengine.com/18308524 문서의 12번 항목을 참고하여 권한을 변경해주시면 됩니다.

     절대로 db.config.php 파일을 삭제하지는 마십시오.

 

 

17. 이제 웹사이트로 로그인을 해 볼 것입니다.

 

    인터넷 주소창에 http://도메인/xe/?module=admin 을 입력하여 관리자 모드로 접속하세요.

 

 

18. 캐쉬파일 재생성을 눌러주세요.

 

19. 관리자모드 > settings 로 들어가 FTP정보를 삭제하신 후 다시 입력해 주세요.

 

20. 1번과정에서 만들었던 임시 페이지를 삭제해 주세요.

 

 

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

아카스 님  댓글Tip  추가

 

ftp로 내려받고 다시 올리기 구찮을 경우가 있죠.

그럴경우 기존서버에 sql파일과 xe압축파일 tar.gz파일을 웹 접근이 가능한 폴더에 집어넣구...(mc를 이용하면 무자게 편하지요잉) . 

그다음 옮길서버에서 putty로 ssh접속후 wget http://이전서버도메인/머시기저시기.sql , wget http://이전서버도메인/머시기저시기.tag.gz등으로 직접 다운 받으면.. 받고 올리는 시간을 줄일수 있습니다... 

전체 682건
번호 카테고리 제목 출처 등록일 조회
공지 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
682 XE 기능개선 추천,비추천시 추천자의 포인트 고정 또는 감소 시키는 방법 고진감래  2010.02.11 6516
681 기타버그 방명록에서 확장변수를 검사(필수여부, 내용 형식) 하지 못하는 현상 June Oh  2010.02.11 6441
680 기타버그 MySQL server has gone away 에러문제 해결 고수군  2010.02.11 8437
679 기타버그 FTP 로 files 폴더 업로드시 압축(zip)파일이 CRC오류라며 압축풀기가 되지 않는 현상 Gekkou  2010.02.11 9128
678 기타버그 로그인이 안되거나 첨부파일이 등록이 안될때 똑디  2010.02.11 7738
677 XE 기능개선 게시판에 간단한 위키기능 흉내내기 고진감래  2010.02.11 7318
676 유용정보 웹브라우저 호환되는 투명도 설정법 (alpha,opacity) CMS Factory  2010.02.11 7267
675 유용정보 게시판의 확장변수를 다른 게시판에 복사하는 방법 [1] khongchi  2010.02.11 7025
674 기타버그 IE6에서 배경이미지가 깜빡거리는 flicker 버그 수정방법 청명공자  2010.02.11 6240
673 기타버그 게시판에서 첨부파일 100% 에서 사라지는 현상 thejeon  2010.02.11 6691
672 기타버그 메일 중복 발송 문제 해결 방법 SMaker  2010.02.11 6561
671 유용정보 xml 쿼리가 어려우면, 기존 php의 query 사용가능하도록.. 푸하라  2010.02.11 6138
» 유용정보 XE를 다른 호스팅업체로 이전하기 (서버이전) Gekkou  2010.02.11 9708
669 기타버그 게시판 설정 중 '게시판상세설명'에 table 태그 쓰면 깨지는 현상 [2] sejin7940  2010.06.29 5982
668 XE 기능개선 이미지 여러개 삽입시 이미지 사이에 공백 및 글 쓸 수 있도록 sejin7940  2010.07.01 5582
667 XE 기능개선 일반 회원이나 손님도, 제목의 글자색상 및 굵기 설정 가능하게! [2] sejin7940  2010.07.03 6495
666 XE 기능개선 게시판 에디터 확장 컴퍼넌트 중 원하는 항목을 밖에다가 버튼화 sejin7940  2010.07.06 6509
665 유용정보 스마트폰이 없이 모바일페이지를 확인방법 토깽이2  2010.07.06 5402
664 유용정보 브라우저 종류 및 버전 확인 소스 - style 설정시 sejin7940  2010.07.06 7164
663 유용정보 페이지 모듈 사용시, 가로 여백관련 주의점! sejin7940  2010.07.25 6226
XE Login