소셜로그인 CallbackURL 질문드립니다.
본문
https://sir.kr/g5_plugin/2213 를 다운받아서 알려주신 경로 그대로 넣었습니다.
해당 파일들을 경로따라 넣고 네이버 Client ID와 Client Secret도 입력했습니다.
별 문제 없이 진행되던 도중 무슨 설정을 잘못했는지 CallbackURL 경로가 "oauth"에서 "social"로 바뀌었는데 혹시 이런 일 겪어보신 분 계실까요??
혹시 제가 놓친게 있을까 해서 extend/oauth.extend.php 코드도 같이 올려봅니다.
extend/oauth.extend.php
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 네이버로그인 API 정보
define('G5_NAVER_OAUTH_CLIENT_ID', '***************');
define('G5_NAVER_OAUTH_SECRET_KEY', '*********');
// 카카오로그인 API 정보
define('G5_KAKAO_OAUTH_REST_API_KEY', '');
// 페이스북로그인 API 정보
define('G5_FACEBOOK_CLIENT_ID', '');
define('G5_FACEBOOK_SECRET_KEY', '');
// 구글+ 로그인 API 정보
define('G5_GOOGLE_CLIENT_ID', '');
define('G5_GOOGLE_SECRET_KEY', '');
// OAUTH Callback URL
define('G5_OAUTH_CALLBACK_URL', G5_PLUGIN_URL.'/oauth/callback.php');
// 닉네임 Prefix
define('G5_OAUTH_NICK_PREFIX', '');
// 로그인 ID 구분자
define('G5_OAUTH_ID_DELIMITER', '_');
// 회원가입을 허용하지 않는 경우 false 로 변경
define('G5_OAUTH_MEMBER_REGISTER', false); //true
// 회원가입 선택여부
define('G5_OAUTH_MEMBER_REGISTER_SELECT', false); //true
// 소셜 회원가입 테이블 생성, 테이블 생성 후 false 로 변경
define('G5_OAUTH_TABLE_CREATE', true);
// 소셜 회원가입 후 이동할 페이지 URL
define('G5_OAUTH_MEMEBER_RESULT_URL', G5_HTTP_BBS_URL.'/register_result.php');
// 소셜로그인 회원가입 정보 테이블
$g5['social_member_table'] = G5_TABLE_PREFIX.'social_member';
if($oauth_mb_no = get_session('ss_oauth_member_no')) {
$member = get_session('ss_oauth_member_'.$oauth_mb_no.'_info');
$is_member = true;
$is_guest = false;
}
?>
!-->
답변 2
링크 올리신 버전은 예전 소셜로그인 버전이 아닐까요?
그누보드 몇 버전을 사용하시는지 모르겠는데
저는 5.5.8.2고요.
제 경우는 config_form.php에서 get_social_callbackurl 함수를 이용해 불러오고,
그 get_social_callbackurl 함수에서 G5_SOCIAL_LOGIN_BASE_URL이라는 상수를 앞에 붙이거든요?
이 상수가 제 경우엔 extend/social_login.extend.php에 정의되어 있고,
이게 G5_PLUGIN_URL.'/'.G5_SOCIAL_LOGIN_DIR인데, G5_SOCIAL_DIR이 /social/이니
최신버전 기준이라면 social로 나오는 게 맞을 겁니다.
하단 사진 확인해보세요.
근데 올리신 링크의 소셜로그인 플러그인은 아마 예전 것이 아닌가 생각되는데
올리신 것의 파일은 G5_OAUTH_CALLBACK_URL 상수를 이용하는 것 같고
여기에서는 /oauth/로 고정되어 있네요.
그런데도 social로 불러와진다는 건, adm/config_form.php에서 최신의 get_social_callbackurl 함수를 부르지 않는지 확인해보세요.
adm/config_form.php에서 네이버 CallbackURL 하단의 코드를 찍어 올려봐주세요.
만약 저 플러그인을 쓰고 싶으시다면, adm/config_form.php에서 해당 url을 불러오는 함수를 수정해줄 필요가 있을 것 같아요.
다시 원복해도 동일현상인가요?