그누보드+영카트 다중설치이후 로그인 및 회원, data연동을 어떻게 해야 할까요?
본문
먼저 그누보드 사이트와 아미나 사이트에서 위 질문내용과 관련한 모든 자료를 이미 참조 했음을 알려드립니다.
여러가지 글이 있었지만 그중 도움이 되었던 자료는 아래 3개 링크인듯 합니다.
저는 위에 3개 링크를 참조하여 구성 하였지만 실패 하였습니다.
위 사진은 Root폴더 사진입니다.
root에는 아무것도 설치 하지 않고 각각의 폴더에 그누보드+영카트를 넣은 상황입니다.
ko폴더는 설치과정을 거쳤으며, cn폴더는 install폴더를 삭제하고 복사 및 붙여넣기 한 상황입니다.
ko폴더에 접두사는 G5_ , G5_shop_로 기본 접두사입니다.
// cn/data/dbconfig.php
cn폴더의 접두사를 g5_cn으로 변경하고 연동할 테이블만 ko폴더 접두사로 변경하였습니다.(2. 링크 참조 구간)
define('G5_TABLE_PREFIX', 'g5_cn_');
$g5['write_prefix'] = G5_TABLE_PREFIX.'write_'; // 게시판 테이블명 접두사
$g5['auth_table'] = 'g5_auth'; // 관리권한 설정 테이블
$g5['config_table'] = G5_TABLE_PREFIX.'config'; // 기본환경 설정 테이블
$g5['group_table'] = G5_TABLE_PREFIX.'group'; // 게시판 그룹 테이블
$g5['group_member_table'] = G5_TABLE_PREFIX.'group_member'; // 게시판 그룹+회원 테이블
$g5['board_table'] = G5_TABLE_PREFIX.'board'; // 게시판 설정 테이블
$g5['board_file_table'] = 'g5_board_file'; // 게시판 첨부파일 테이블
$g5['board_good_table'] = 'g5_board_good'; // 게시물 추천,비추천 테이블
$g5['board_new_table'] = 'g5_board_new'; // 게시판 새글 테이블
$g5['login_table'] = 'g5_login'; // 로그인 테이블 (접속자수)
$g5['mail_table'] = 'g5_mail'; // 회원메일 테이블
$g5['member_table'] = 'g5_member'; // 회원 테이블
$g5['memo_table'] = 'g5_memo'; // 메모 테이블
$g5['poll_table'] = G5_TABLE_PREFIX.'poll'; // 투표 테이블
$g5['poll_etc_table'] = G5_TABLE_PREFIX.'poll_etc'; // 투표 기타의견 테이블
$g5['point_table'] = 'g5_point'; // 포인트 테이블
$g5['popular_table'] = G5_TABLE_PREFIX.'popular'; // 인기검색어 테이블
$g5['scrap_table'] = G5_TABLE_PREFIX.'scrap'; // 게시글 스크랩 테이블
$g5['visit_table'] = G5_TABLE_PREFIX.'visit'; // 방문자 테이블
$g5['visit_sum_table'] = G5_TABLE_PREFIX.'visit_sum'; // 방문자 합계 테이블
$g5['uniqid_table'] = 'g5_uniqid'; // 유니크한 값을 만드는 테이블
$g5['autosave_table'] = 'g5_autosave'; // 게시글 작성시 일정시간마다 글을 임시 저장하는 테이블
$g5['cert_history_table'] = 'g5_cert_history'; // 인증내역 테이블
$g5['qa_config_table'] = G5_TABLE_PREFIX.'qa_config'; // 1:1문의 설정테이블
$g5['qa_content_table'] = G5_TABLE_PREFIX.'qa_content'; // 1:1문의 테이블
$g5['content_table'] = 'g5_content'; // 내용(컨텐츠)정보 테이블
$g5['faq_table'] = G5_TABLE_PREFIX.'faq'; // 자주하시는 질문 테이블
$g5['faq_master_table'] = G5_TABLE_PREFIX.'faq_master'; // 자주하시는 질문 마스터 테이블
$g5['new_win_table'] = G5_TABLE_PREFIX.'new_win'; // 새창 테이블
$g5['menu_table'] = G5_TABLE_PREFIX.'menu'; // 메뉴관리 테이블
define('G5_USE_SHOP', true);
define('G5_SHOP_TABLE_PREFIX', 'g5_cn_shop_');
shop은 접두사만 바꿔주고 아무것도 수정하지 않았습니다.
!-->
// cn/common.php
common.php에 session경로를 아래와 같이 수정해 주었습니다. (common.php 186~205구간)
@ini_set("session.use_trans_sid", 0); // PHPSESSID를 자동으로 넘기지 않음
@ini_set("url_rewriter.tags",""); // 링크에 PHPSESSID가 따라다니는것을 무력화함 (해뜰녘님께서 알려주셨습니다.)
//session_save_path(G5_SESSION_PATH); // 이부분 주석처리 후 아래와 같이 추가
session_save_path($root_path.'/ko/data/session');
if (isset($SESSION_CACHE_LIMITER))
@session_cache_limiter($SESSION_CACHE_LIMITER);
else
@session_cache_limiter("no-cache, must-revalidate");
ini_set("session.cache_expire", 180);
ini_set("session.gc_maxlifetime", 10800);
ini_set("session.gc_probability", 1);
ini_set("session.gc_divisor", 100);
session_set_cookie_params(0, '/');
ini_set("session.cookie_domain", G5_COOKIE_DOMAIN);
@session_start();
// cn/config.php
config.php는 아래와 같이 수정하였습니다. (3. 링크 참조 구간)
define('G5_PATHA', G5_PATH.'/..');
define('G5_URLA', G5_URL.'/..');
define('G5_ADMIN_URL', G5_URL.'/'.G5_ADMIN_DIR);
중략
// cn/extend/apms.extend.php data접두사 부분을 ko폴더 접두사로 바꿨습니다. (apms.extend.php 72구간)
|
답변 1
회원연동을 하려면 회원가입 관련 DB가 별도로 되어 있는게 아닌지 파악이 필요합니다. 회원정보를 한DB에서 연동하는게 아니라면 커넥션이 서로 다르기 때문에 편법이기는 하지만 json이나 api 방식으로 한 DB에 회원 게시판을 연동해서 하는 방식으로 작업하시는게 효율적이지 않을까 싶네요 회원정보만 한 DB에서 불러다 써야 하는 부분이 있습니다.