질문/조언질답게시판
Extra Form
PHP PHP 7.3
CMS Rhymix

웹호스팅에서 VPS로 옮길 예정이구요

 

우선 서버를 기본 세팅하는건 어떻게 하는지 알게 됐습니다.

 

 

다만 아직 이전 서버에 있던 사이트를 어떻게 새로운 서버로 옮기는지 잘 모르겠는데

이에 대해서 좀 쉽게 설명해주실 수 있으신가요?

  • profile
    서버 설정은 아래 링크를 참조 하시고
    https://xetown.com/tips/1154431

    새로 이전할 VPS에 옮기실 계정과 vhost를 먼저 만드시고
    이전 할 호스팅 계정에서 data파일과 db 파일을 압축해서 다운로드후에
    이전할 VPS 계정에 data를 업로드 후 압축을 풀고 db 를 임포트 하시면 됩니다.
    이전중에 VPS계정의 정보에 맞추어 db 와 패스워드등을 맞추어주어야 겠지요....^^
  • profile profile
    아 여기서 좀 어렵네요ㅎㅎ ㅠㅠ

    그럼 일단 이전 서버에서 사용했던 계정을 그대로 쓴다고 가정하고
    라이믹스 설치 -> data,db 압축 후 옮기기 이렇게 하면 되는건가요?
  • profile profile
    라이믹스 설치는 이전 서버에 이미 되어 있잖아요. data와 DB만 옮기면 라이믹스 설치된 것도 자연스럽게 넘어갑니다.

    이사갈 때 새 집에 세탁기를 새로 설치한 후 이전 집에서 세탁기를 옮기지는 않잖아요? 쓰던 세탁기 그대로 가져가서 더운물 찬물 하수구 호스만 잘 연결해 주면 되지요.
  • profile profile
    아하 감사합니다!
  • profile
    서버 셋팅이 완료 되었다는걸 가정하면
    DB랑 파일 옮기시고 DNS에서 새로운 서버 아이피 변경하면 끝입니다.
  • profile profile
    아하 감사합니다!
  • profile

    사이트는 FTP 계정에 들어 있는 각종 파일들, 그리고 DB로 이루어집니다. 두 가지를 각각 복사하여 새 서버로 옮긴 후, 도메인을 새 서버로 연결하는 것이 기본적인 원리입니다.

     

    1. 사이트 운영에 필요한 FTP 계정, DB 계정 등을 새 서버에 생성합니다. root 계정으로 운영하지 마세요.

     

    2. 이전 서버에서 FTP로 파일을 모두 다운받아 새 서버에 업로드하거나, ssh와 rsync를 사용할 수 있는 환경이라면 그걸 써서 파일을 모두 복사합니다. XE나 라이믹스라면 캐시파일은 제외하고 복사해야 합니다.

     

    3. 이전 서버에서 DB를 백업받아 새 서버에 복원합니다. (phpmyadmin의 "내보내기" 기능을 사용하거나, ssh를 사용할 수 있는 환경이라면 mysqldump 명령으로 백업합니다.)

     

    4. 도메인 등록업체나 호스팅 업체의 "DNS 관리" 화면에서 도메인을 새 서버의 IP 주소로 연결해 주거나, 새 서버 업체의 네임서버로 변경합니다. 전자는 5분~4시간, 후자는 24~48시간 후에 효과가 있습니다. 업체에 따라서는 시간이 오래 걸리는 네임서버 변경밖에 선택의 여지가 없을 수도 있습니다.

     

    문제는 4단계입니다. 도메인을 새 서버로 연결하는 데 시간이 오래 걸리면 방문자들이 이전 서버와 새 서버 중 랜덤으로 선택하여 접속하게 되는 사태가 일어납니다. 이전 서버 접속자가 남긴 글은 새 서버에는 보이지 않고, 새 서버 접속자가 남긴 글은 이전 서버에는 보이지 않으니 누군가는 글을 날려먹게 되지요. 포인트나 아이템 등 회원들이 중요하게 여기는 것들이 제대로 적용되지 않을 수도 있고요. 서버 이전을 원활하게 하려면 4단계에 소요되는 시간을 최소화하는 것이 관건입니다. 네임서버를 잘 선택하고 미리 준비하면 5~10분만에 마칠 수도 있고, 이전 서버에는 그 사이 점검중 화면을 걸어놓으면 그만입니다.

     

    글 리젠율이 높은 커뮤니티라면 2~3단계와 4단계의 타이밍을 잘 맞추는 것도 중요합니다. 파일은 어제 다 복사했는데 오늘에야 본격적으로 서버 이전을 한다면 어제와 오늘 사이에 업로드된 파일들은 새 서버로 넘어오지 않을 테니까요. 그렇다고 모든 파일을 다 다운받아서 다시 업로드하기도 불편하기 짝이 없으니, rsync처럼 변경된 파일만 자동으로 동기화해 주는 프로그램이 무척 유용합니다.

     

    테스트 과정도 신경을 써야 합니다. 이전 서버와 새 서버의 환경이 다르기 때문에 (특히 PHP 버전을 바꾸거나 하면) 새 서버로 옮기자마자 에러가 작렬할 수 있거든요. 그렇다고 새 서버 IP로 미리 접속해 보는 것은 절대 금물입니다. XE나 라이믹스는 미리 지정된 도메인 이외의 다른 도메인이나 IP로 접속하면 제대로 작동하지도 않을 뿐더러, 이런 문제가 발생할 수도 있어요. 도메인이 아닌 IP로 사이트에 접속할 수 있다는 것 자체가 서버가 잘못 세팅되었다는 뜻입니다. 미리 테스트해 보시기를 원한다면 내 PC의 hosts 파일을 임시로 수정하여 도메인이 IP로 연결되도록 하는 것이 가장 무난한 방법입니다.

     

    그 밖에도 여러 가지 신경써야 할 것이 있지만, 소규모 사이트라면 일단 옮겨놓고 시행착오를 겪어가며 안정시켜도 괜찮습니다. 그 과정에서 운영자도 많이 배우거든요. 그러나 다소 규모가 있는 사이트들은 점검 시간이 길어지거나 오류가 발생하면 사용자들도 불편하고 광고수입에도 영향을 주기 때문에, 1~4단계까지 완벽하게 조율하여 최단시간에 오류 없이 옮겨 줄 수 있는 전문가에게 돈을 내고 의뢰하기도 합니다.^^

  • profile profile
    상세한 설명 감사합니다

    1번의 경우 root 계정으로 사용하지 말라 하셨는데 혹시 root 계정으로 사용한다면 무슨 문제가 생기나요?
  • profile profile
    사이트를 구성하는 파일들이 root 계정 소유로 되어 있으면 뭔가 관리가 필요할 때마다 (코어 업데이트라든지... 스킨 수정이라든지...) root 계정으로 접속해서 작업해야 합니다. 소유자보다 권한이 낮은 계정으로는 파일을 수정할 수 없으니까요.

    그런데 리눅스에서 root는 윈도우의 관리자 계정과는 비교할 수 없는 막강한 권한을 갖고 있으므로 (심지어 지금 실행중인 O/S 파티션을 밀어버릴 수도 있습니다 ㅎㅎ) 평소 root를 많이 사용할수록 서버를 잘못 건드려서 큰 문제를 일으킬 가능성도 높아집니다. 명령 한 글자 차이로 다 날릴 수도 있어요. 아무 때나 최고관리자 로그인을 남발하는 것은 보안에도 좋지 않고요. 사이트명과 관련이 있는 일반 계정을 하나 더 만들어서 평소에는 그것만 쓰는 것이 안전합니다.

    게다가 요즘 나오는 FTP 프로그램들은 root 계정으로는 아예 로그인되지 않도록 막아놓은 경우가 많습니다.
  • profile profile
    아.. 그렇군요ㅎㅎ 감사합니다
  • profile profile
    아 그리고 궁금한게

    Data를 이전한다는건 기존 웹호스팅의 www 디렉터리 안의 폴더를 모두 이전하는 것 맞나요?
  • profile profile

    네. 그리고 그것과 별도로 DB가 있습니다. DB는 마치 서버 안에 또 하나의 서버가 있는 것처럼 별도의 root 비번과 DB 계정, 비번 등을 사용합니다. (MySQL, MariaDB 등)

  • profile profile
    감사합니다!ㅎㅎ
  • ?
    독학으로 해봤는데 초심자에게는 너무어렵고 배워야될게 너무많더라구요
    저는 서버이전 비용지불하시고 전문가에게 의뢰하시는걸 추천드립니다
  • ?
    뭐.. 어차피 급하게 이전을 해야하는 경우가 아니라면
    서버 환경을 기존의 환경과 비슷하게 맞춘 후, 1차적으로 소스 및 DB로 복구하시면 됩니다.

    이후 hosts 파일을 변경하여 정상적으로 옮겨졌는지 확인을 충분히 하시면 됩니다.

    정상작동한다고 판단이 되면 일정 잡고 도메인 레코드 변경 및 최신 데이터로 복구를 다시 해주시면 단절시간을 최소화하면서 이전을 할 수 있어요.