본문 바로가기
아미나빌더

호스팅 이전 삽질기

by 우아한친구들 2017. 9. 5.
반응형

운영하고 있는 커뮤니티 사이트의 호스팅을 옮기면서 발생했던 문제를 공유합니다. 제가 처한 환경을 담담하게 복기해 보겠습니다. 비슷한 작업을 하시는 분들은 참고 하시기 바랍니다.

 

1. https://www.iwinv.kr/account/web_host.html 주소의 무제한 트래픽 웹호스팅 신청. 이때 접속 계정을 abc로 했다고 가정하겠습니다. 적은 금액에 무제한 트래픽이라서 신청해서 잘 쓰고 있었습니다. 그런데 문제는 이 상품의 경우 업로드된 이미지를 외부에서 링크로 사용할 수 없게 막아 놓았습니다. 트래픽 무제한이니 어쩔 수 없는 조치였겠지요. 

 

2. 커뮤니티 회원들의 요구로 외부에서도 이미지를 링크해서 사용할 수 있도록 하기 위해 https://www.iwinv.kr/account/web_host.html 상품 중에서 종량제 상품으로 변경하는 작업을 했습니다. 

 

3. 업체의 기술지원요청해 보니 호스팅 사이의 이전은 불가능하다라고 하더군요. 그래서 기존 신청했던 abc계정을 놔두고, xyz계정을 하나 더 신청했습니다. 

 

4. abc계정에 접속해서 소스와 DB를 백업한 후에 xyz계정에 소스 업로드하고, DB 임포트 했습니다. 그리고 DNS 변경을 했습니다. DNS 변경한 순간 접속 에러가 나옵니다. 검색결과 DB계정이 서로 맞지 않아서 발생하는 문제라고 하더군요. 

 

5. 검색 결과 그누보드루트의 data/dbconfig.php 속에 있는 DB접속 정보를 수정한 후 소스 업로드 했습니다. 기존 계정인 abc이름으로 MYSQL USER와 DB가 들어가 있어서 그랬던 것으로 추정했습니다. dbconfig.php 폴더에서 아래와 같은 곳에 xzy로 변경한 겁니다. 

define('G5_MYSQL_USER', 'xzy'); 

define('G5_MYSQL_PASSWORD', 'DB비번입력');

define('G5_MYSQL_DB', 'xzy');

 

6. 사이트는 극적(?)으로 떴습니다. 검색하고 수정하는 동안에 심장이 어찌나 쫄깃하던지. 그런데 로그인 문제가 발생합니다. 검색해 보니 data 폴더 속의 세션과 쿠키 폴더의 권한문제가 있으면 로그인 접속이 안되 수 있다고 하는 것 같아 data 폴더 전체와 그 하위 폴더 권한을 777로 줬습니다. (보안상 문제가 될지는 모르겠네요. 그냥 문제해결을 빨리 하고 싶어서...) 그렇게 하고 나서 약간의 시간이 지나니 로그인도 자연스럽게(?) 해결 됩니다. 

 

7. 문제는 게시물에 첨부했던 이미지들이 엑박이 뜨는 겁니다. 과거 오픈 전에 작업했던 이미지가 올라가는 경로와 새롭게 호스팅해서 올린 곳의 도메인 주소가 바뀌어서 그런 것으로 보입니다. 아... 또 열심히 검색했습니다. 게시물이 몇개만 있으면 글 수정 기능으로 경로를 다 바꿔주고 싶었으나, 썸네일 등 수많은 이미지를 어떻게 하나 싶었습니다. 

 

8. 검색해 보니 실제 게시물이 저장되는 DB 속의 내용을 교체하는 쿼리를 짜주신 분이 있더라고요. 게시물 주소는 제가 까먹었습니다. 코드를 참고 하여 별도의 php 파일로 만든 후 FTP로 업로드한 다음 주소창에서 주소를 입력하여 실행했습니다.

 

<?php

include_once('./_common.php');

// 도메인 변경 후 코드 처리 시작 - 한번 실행 후 완료 

//변견 전 내용 

$old="http://abc/data";

//변경 후 내용

$new="https://xyz/data";

$sql = sql_query("select * from g5_board");

while($data = sql_fetch_array($sql)){

echo"$data[bo_table]<br>";

sql_query("update g5_write_{$data[bo_table]} set wr_content=REPLACE(`wr_content`,'$old','$new')");

}

// // 도메인 변경 후 코드 처리 끝 

?> 

 

9. 이렇게 해서 마무리를 했습니다. 

 

참 여럽네요. 예전에는 개발팀 데리고 일하면서 말로 끝냈던 것을 지금은 직접 하려고 하니 알아야 할 것들도 많고 실수도 많고 그러네요. 저랑 비슷한 작업을 하는 분들은 참고 하세요. 오늘도 그누와 아미나에서 많은 것을 배우고 갑니다. 

 

 

본게시글의 메인 출처는; http://amina.co.kr 입니다.

해당 게시글은 개인적인 질문에 대한 답변을 참고한 것입니다.

 

 

반응형

댓글