BOARD

팁·활용

그누보드4에서 그누보드5로의 코드 마이그레이션: URL 및 변수 변경 가이드

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 6회 작성일 26-10-13 17:05

본문

그누보드4에서 그누보드5로의 코드 마이그레이션: URL 및 변수 변경 가이드

그누보드4(G4)에서 그누보드5(G5)로 코드를 이전하거나 스킨을 수정할 때 발생하는 URL 및 경로 변수 오류를 해결하고 올바르게 적용하는 방법을 알아봅니다.

그누보드4에서 그누보드5로의 URL 및 변수 변경 가이드

그누보드4(G4) 환경에서 사용하던 코드를 그누보드5(G5) 환경으로 마이그레이션할 때, URL 관련 전역 변수와 상수 명칭이 변경되므로 이를 올바르게 수정해야 합니다.

URL 변수 치환 방법

그누보드4에서 사용하던 $g4['url'] 또는 $g4[url] 변수는 그누보드5에서 G5_URL 상수로 변경하여야 합니다.

  • 변경 전 (G4): {$g4['url']}/bbs/board.php?bo_table... 형식
  • 변경 후 (G5): G5_URL 상수 및 문자열 결합 형식

코드 수정 시 주의사항 및 해결 방법

단순히 {$G5_URL} 형태로만 코드를 수정할 경우 정상적으로 인식되지 않거나 반응이 없을 수 있습니다. 이 경우 주변 코드와 함께 전체 소스를 확인하고 .G5_URL. 또는 PHP 문자열 결합(. 연산자) 및 출력문(echo 등) 규칙에 맞게 올바르게 작성해야 합니다.

  • 작성 예시:
    echo '<embed src= "'.G5_URL.'/data/file/'.$bo_table.'/$swf_file" width="730px" height="530px"/>';

PHP 경로와 URL 경로의 구분

그누보드4에서는 $g4['path'] 하나로 통합하여 사용하는 경향이 있었으나, 그누보드5에서는 파일 인클루드용 경로(G5_PATH)와 웹 출력용 URL 경로(G5_URL)를 구분하여 사용하므로 목적에 맞게 적용해야 합니다.

그누보드5 URL 상수 적용 시 오류 해결 방법

그누보드4에서 사용하던 {$g4['url']} 코드를 그누보드5 환경에 맞게 G5_URL 상수로 변경할 때, 반응이 없거나 경로가 잘못 출력되는 문제는 주로 문자열 결합 기호(점 .) 누락이나 따옴표 처리 실수 때문에 발생합니다.

확인 및 수정 위치

  • 스킨 파일이나 PHP 코드 내에서 URL 상수를 호출하는 구문을 확인합니다.
  • 예: {$g4['url']}/bbs/board.php?bo_table 형태의 코드를 수정할 때 단순히 대괄호만 바꾸거나 기호를 누락하면 값이 정상적으로 출력되지 않습니다.

올바른 적용 방법

  • G5_URL은 배열 변수가 아닌 상수이므로 문자열과 결합할 때는 .G5_URL. 또는 '.G5_URL.' 형태의 올바른 문자열 결합 형식을 갖추어야 합니다.
  • 사용 예시:
    echo '<embed src="'.G5_URL.'/data/file/'.$bo_table.'/$swf_file" width="730px" height="530px"/>';

다음 행동 및 주의사항

  • 상수를 넣었을 때 Not Found 메시지나 원하지 않는 경로(예: 중간에 bbs 경로가 중복되는 현상 등)가 발생한다면 상수 앞뒤의 점(.)이나 슬래시(/) 위치를 점검합니다.
  • 코드가 잘라진 상태라면 주변 코드와 함께 전체 소스를 확인하며 수정해야 합니다.

그누보드5에서 PHP 파일 인클루드 경로와 HTML/CSS/JS 경로(G5PATH, G5URL) 구분 방법

그누보드4에서는 하나의 변수로 PHP 파일 경로와 HTML 경로를 통합해서 사용했으나, 그누보드5에서는 서버 파일 경로와 웹 브라우저 URL 경로를 명확히 구분하여 사용해야 합니다.

경로별 사용 상수

  • G5_PATH (서버 경로): 프로그램 내부에서 파일을 업로드하거나 PHP 파일을 인클루드(include_once)할 때 사용합니다.
    • 예시: include_once(G5_PATH.'/head.php');
  • G5_URL 및 관련 URL 상수 (웹 URL): 웹 브라우저상에서 이미지, CSS, 자바스크립트(JS), 링크 등을 불러오거나 URL을 사용할 때 사용합니다.
    • 예시: <link rel="stylesheet" href="<?php echo G5_CSS_URL?>/default.css">
    • 예시: <script src="<?php echo G5_JS_URL?>/common.js"></script>

주의사항

include_once(G5_URL.'/head.php');와 같이 URL 경로를 사용하여 PHP 파일을 불러오려고 하면 서버 설정에 따라 에러가 발생할 수 있습니다. include나 require는 절대 경로를 사용해야 하므로, 파일 인클루드에는 반드시 G5_PATH를 사용해야 합니다.

상황별 URL 변수 수정 및 판단 기준

내 상황우선할 판단다음 행동
그누보드4의 {$g4['url']} 코드를 그누보드5 환경에 맞게 바꾸려 할 때배열 변수에서 상수(G5_URL)로 변경하고 문자열 결합 규칙 확인G5_URL 상수를 .G5_URL. 형식의 문자열 결합 형태로 수정하고 주변 전체 코드와 함께 점검
G5_URL을 적용했으나 반응이 없거나 경로에 불필요한 bbs 등이 중복될 때상수 앞뒤의 문자열 결합 기호(점 .) 및 따옴표 누락 여부 확인코드가 잘려 있다면 전체 소스를 확인하여 echo '<embed src="'.G5_URL.'/...">' 형태로 수정
PHP 파일 인클루드 경로와 웹 출력 경로를 헷갈릴 때서버 파일 경로와 웹 URL 경로의 용도 구분파일 로드시 G5_PATH를 사용하고, 웹 링크·이미지·CSS에는 G5_URL 계열 상수를 사용

실전 FAQ

Q. G5_URL을 적용했는데 브라우저에서 아무런 반응이 없거나 코드가 그대로 노출됩니다.

  • 예외 및 대안: 단순히 {$G5_URL} 형태로 대괄호만 바꾸거나 상수를 단독으로 넣으면 PHP에서 정상적으로 파싱되지 않습니다. 문자열 안에서 사용할 때는 '.G5_URL.' 또는 .G5_URL.과 같이 문자열 결합 연산자(.)를 올바르게 앞뒤로 배치해야 합니다.

Q. URL 상수 적용 후 경로에 bbs 폴더가 중복되거나 파일을 찾을 수 없다는 에러가 발생합니다.

  • 대안 및 해결: 상수 앞의 점(.)이나 슬래시(/)를 누락하여 상대 경로가 꼬인 경우입니다. config.php의 G5_DOMAIN 설정 및 소스 내 경로 결합 부근의 온점과 슬래시 위치를 다시 대조하여 수정하세요.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.