그누보드 다음 주소 API 파라미터 제거 패치 가이드
페이지 정보

본문
그누보드 다음 주소 API 파라미터 제거 패치 가이드
다음 우편번호 서비스 정책 변경에 따른 그누보드 5.4.4 미만 버 버전의 API 호출 제한 문제를 해결하고, 소스 코드 수정 및 적용 여부를 확인하는 방법을 알아봅니다.
그누보드 다음 주소 API 패치 대상 확인 방법
현재 운영 중인 사이트가 패치 대상인지 확인하려면 주소 기능이 적용된 페이지의 소스 보기를 실행하여 자바스크립트 파일 경로를 확인해야 합니다.
확인 절차
- 운영 중인 사이트에서 주소 기능이 적용된 페이지를 엽니다.
- 해당 페이지의 소스 보기를 실행합니다.
- 다음 주소 API 관련 자바스크립트 파일 경로 뒤에 파라미터가 포함되어 있는지 확인합니다.
- 패치 대상인 경우:
postcode.v2.js?ver=...형태의 파라미터가 포함되어 있습니다. - 버전 기준: 그누보드 5.4.4 및 영카트 5.4.4 이후 버전에는 이미 적용되어 있으며, 5.4.4 미만 버전 운영 사이트는 패치가 필요합니다.
- 참고사항: 외부 URL을 호출하는 자바스크립트 파일 주소 뒤에 버전 등의 파라미터가 포함되어 있으면 API 정책상 호출이 제한되며, 크롬 개발자 도구 콘솔에서 경고나 에러 로그가 발생할 수 있습니다.
- 패치 대상인 경우:
lib/common.lib.php 파일 수정 방법
외부 자바스크립트 호출 시 불필요한 버전 파라미터가 붙지 않도록 하려면 작업 전 반드시 lib/common.lib.php 원본 파일을 안전한 곳에 백업해 두어야 합니다. 코드 수정 중 발생할 수 있는 오류에 대비하기 위함입니다.
1. 호스트 확인 코드 추가
lib/common.lib.php 파일에서 현재 접속자 처리 코드인 아래 구문을 찾습니다.
// 현재접속자 처리
$tmp_sql = " select count(*) as cnt from {$g5['login_table']} where lo_ip = '{$_SERVER['REMOTE_ADDR']}' ";
$tmp_row = sql_fetch($tmp_sql);
위 구문 바로 아래에 다음 코드를 추가합니다.
$http_host = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME'];
2. 정규식 코드 수정
버전에 따라 차이가 있는 기존 자바스크립트 버전 추가 정규식 코드를 찾아서 삭제하고 아래 코드로 수정합니다.
$add_version_str = (stripos($js[1], $http_host) !== false) ? '?ver='.G5_JS_VER : '';
$js[1] = preg_replace('#\.js([\'"]?>)<\/script>$#i', '.js'.$add_version_str.'$1', $js[1]);
다음 주소 API 패치 후 정상 적용 여부 확인 방법
코드를 수정한 뒤 웹사이트 페이지 소스 보기를 다시 실행하여 다음 주소 API 호출부에서 파라미터가 정상적으로 제거되었는지 확인합니다.
- 일반 환경:
<script src="http://dmaps.daum.net/map_js_init/postcode.v2.js"></script>형태로 출력되어야 합니다. - HTTPS 환경:
<script src="https://spi.maps.daum.net/imap/map_js_init/postcode.v2.js"></script>형태로 출력되어야 합니다.
함께 보면 좋은 글
참고자료
기타 참고자료
- 이전글그누보드 모바일 테마 tail.php 및 CSS 수정 경로 26.09.12
- 다음글그누보드 관리자 페이지 메타태그 및 스크립트 설정 오류로 인한 접근 불가 해결 방법 26.09.12
댓글목록
등록된 댓글이 없습니다.