채택완료

소셜로그인 CallbackURL 질문드립니다.

2022-12-19 (월) 18:19:07 2,462

https://sir.kr/g5_plugin/2213 를 다운받아서 알려주신 경로 그대로 넣었습니다.

해당 파일들을 경로따라 넣고 네이버 Client ID와 Client Secret도 입력했습니다.

별 문제 없이 진행되던 도중  무슨 설정을 잘못했는지 CallbackURL 경로가 "oauth"에서 "social"로 바뀌었는데 혹시 이런 일 겪어보신 분 계실까요??

1935571771_1671441405.3374.png

혹시 제가 놓친게 있을까 해서 extend/oauth.extend.php 코드도 같이 올려봅니다.

1935571771_1671441022.5904.png

extend/oauth.extend.php

Copy
<?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;
}
?>

1935571771_1671441526.5163.png

답변 2개 / 댓글 2개

채택된 답변
+20 포인트
2022-12-20 (화) 13:23:29

링크 올리신 버전은 예전 소셜로그인 버전이 아닐까요?

그누보드 몇 버전을 사용하시는지 모르겠는데

저는 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로 나오는 게 맞을 겁니다. 

하단 사진 확인해보세요.

2009439114_1671509959.7082.png

2009439114_1671510094.6029.png

근데 올리신 링크의 소셜로그인 플러그인은 아마 예전 것이 아닌가 생각되는데

올리신 것의 파일은 G5_OAUTH_CALLBACK_URL 상수를 이용하는 것 같고

2009439114_1671510161.1443.png

여기에서는 /oauth/로 고정되어 있네요.

그런데도 social로 불러와진다는 건, adm/config_form.php에서 최신의 get_social_callbackurl 함수를 부르지 않는지 확인해보세요.

adm/config_form.php에서 네이버 CallbackURL 하단의 코드를 찍어 올려봐주세요.

만약 저 플러그인을 쓰고 싶으시다면, adm/config_form.php에서 해당 url을 불러오는 함수를 수정해줄 필요가 있을 것 같아요.

답변에 대한 댓글 1개

덕분에 해결했어요!!
바보처럼 예전 코드로 작업하니 될 리가 없었네요ㅠ

친절하게 설명 너무 잘해주셔서 한번에 해결했습니다!
2022-12-20 (화) 00:51:39

다시 원복해도 동일현상인가요?

답변에 대한 댓글 1개

네ㅠㅠ
플러그인도 스킨도 잘 불러져오는데 왜 CallbackURL 경로만 social로 나오는걸까요ㅠㅠ

답변을 작성하려면 로그인이 필요합니다.