pc에서 작업한 사이트를 호스팅 업체를 통해 업로드를 하려고 합니다.
검색을 해 보니 제가 못찾는것이겠지만 호스팅 이전하는 방법만 보이고
pc에서 작업한것들은 어떻게 업로드 해야하는지 보이지 않아 질문드리고자 합니다.
설명들을 보면 이전 호스팅 업체에 업로드된 파일들을 ssh를 통해 tgz.gz 압축하고
새 호스팅업체에 ssh로 db와 함께 설치한다.. 라고 되어 있는데
pc의 파일들은 어떻게 압축 해야할지 감이 잡히지를 않습니다.
무식한 방법인것 같지만 files폴더를 제외한 나머지 폴더들을 ftp로 업로드 하고
ssh로 db 업로드까지 하면 완전 망가져있지만 도메인으로 접속은 되고,
files폴더를 업로드 하면 계속 XE cannot connect to DB 라고 뜨며 접속이 되지 않네요.
제가 files폴더를 업로드 한 방법은 윈도우 상에서 files폴더에 관리자 및 모든권한 부여한 뒤
tar파일로 압축해 tar -xzvf 파일명.tgz 로 ssh를 통해 업로드 했습니다.
db.config.php은 사이트에 맞게 설정을 한듯하고 db의 xe_sites도 도메인명으로 변경을 해주었습니다.
헌데 계속 DB에 접속할 수 없다고 뜨네요...
제가 압축해서 올리는 방법이 맞는건지, 아니라면 어떤 방법을 통해 압축하는게 맞는 방법인지
방향 알려주실분을 애타게 찾습니다..ㅠㅠ
아참 db의 백업은 phpmyadmin에서 내보내기로 진행 했습니다.
잘못 기재한 부분이 있을지 몰라 db.config.php의 내용 일부도 올립니다.
<?php if(!defined("__XE__")) exit();
$db_info = (object)array (
'master_db' =>
array (
'db_type' => 'mysql',
'db_port' => '3306',
'db_hostname' => 'localhost',
'db_userid' => 'ididid',
'db_password' => '*****',
'db_database' => 'xedb',
'db_table_prefix' => 'xe_',
),
'slave_db' =>
array (
0 =>
array (
'db_type' => 'mysql',
'db_port' => '3306',
'db_hostname' => 'localhost',
'db_userid' => 'ididid',
'db_password' => '*****',
'db_database' => 'xedb',
'db_table_prefix' => 'xe_',
),
),
'default_url' => 'http://도메인주소/',
'use_mobile_view' => 'Y',
'use_rewrite' => 'Y',
'time_zone' => '+0900',
'use_prepared_statements' => 'Y',
'qmail_compatibility' => 'N',
'use_db_session' => 'N',
'use_ssl' => 'none',
'sitelock_whitelist' =>
array (
0 => '127.0.0.1',
),
'embed_white_object' =>
.
.
.
댓글 6
1. 윈도우에서 부여한 권한은 서버에 올려놓고 나면 아무 의미가 없습니다.
서버에서 압축 해제한 후에 chmod 명령으로 퍼미션을 일괄 변경해야 합니다.
호스팅 업체의 DB 아이디, 비번, DB명을 다시 한 번 확인해 보시고요,
만약 호스팅이 PHP 7.0이라면 db_type도 mysqli로 변경해 주셔야 합니다.
2. DB를 업로드한 후에 압축 풀어서 DB 복원까지 하셨나요?
아니면 DB 파일을 그냥 올려놓기만 하셨나요?
phpmyadmin에서 DB를 열어봤을 때 xe_documents, xe_modules 등 모든 테이블이 다 나오나요?
3. files 폴더를 업로드할 때 그 안의 cache 폴더는 빼고 업로드해 보세요.
질문한지 얼마 되지 않았는데 빠르게 답변 주셔서 감사합니다.
1. 윈도우 권한 부여는 그냥 압축하니 권한부족으로 압축을 하지 못하는 상황때문에 설정 후 압축한 것이고 업로드시 777로 퍼미션 설정 후 업로드 하였습니다. 말씀하신 DB내용은 이것때문인가 싶어 수차례 확인해 보았습니다 ㅠㅠ php 5.6 사용 중이고요.
2. ssh를통해 업로드 하였고 잘 복원된것 까지 확인을 하였습니다.
3. 방금 해 보았으나 동일한 메세지가 출력됩니다.ㅠㅠ
여러가지 방법을 말씀해 주셔서 감사합니다.
혹시 본문 내용에서 절차상 제가 실수한 부분은 없나요?
ssh를 사용할 수 없는 환경에서 files 폴더를 반디집을 통해 tar파일로 압축하고
ftp로 업로드해 ssh로 업로드 하는게 일반적인 방법이 맞는지, 놓친 부분이 있는지 궁금합니다.
다시한번 답변주신점 감사드려요.
혹시 사용하시는 호스팅에서 DB 접속시 호스트를 localhost가 아닌 다른 것으로 해야 한다고 알려주지는 않던가요? 드물지만 이런 경우가 가끔 있습니다. localhost 대신 127.0.0.1을 써야 하는 곳도 종종 있고요.
호스팅에 따라서는 ftp/ssh 계정 비번과 DB 비번이 따로 있는 경우도 있습니다. 이런 곳이라면 DB 비번을 다시 확인해 보거나 재설정해 보세요.
따로 고치지는 않았습니다.
하단에 말씀해주신 부분 다시 놓친 부분이 있는지 다시한번 꼼꼼히 살펴보겠습니다.
칼답변 감사드려요^^
저의 경우는 대게 db config 파일의 문제로
db 연결이 안되더라구요.
아무 지식 없이 처음 해보는지라 배우는 과정이라 생각하고 해야겠습니다 ㅠㅠ