그누보드5 소셜로그인 v2 > 그누보드5 플러그인

그누보드5 플러그인

그누보드는 다양한 기능을 추가하기 쉽습니다.

그누보드5 소셜로그인 v2 정보

그누보드5 소셜로그인 v2

첨부파일

gnuboard5.oauth.v2.zip (54.9K) 3258회 다운로드 2017-07-19 14:18:30

본문

그누보드5 및 영카트5에서 사용할 수 있는 소셜로그인 플러그인입니다.

v2 버전은 소셜로그인을 통한 회원가입이 가능해졌으며 회원가입 때 방문자가

회원가입여부를 선택할 수 있습니다. 또한 소셜로그인으로 가입한 경우에

소셜로그인 인증을 통해 회원정보 수정 또한 가능합니다. 회원가입은 카카오를

제외한 서비스에서만 가능합니다.

 

e6c719f47a633dc465213c9c2f72d139_1484878
로그인 화면에서 소셜로그인 서비스를 선택할 수 있습니다.

 

e6c719f47a633dc465213c9c2f72d139_1484878
 

가입이 되어있지 않은 경우 위와 같은 창이 표시됩니다. 회원가입 여부를 선택할 수 있도록

하기 위해서는 extend/oauth.extend.php 파일에서 G5_OAUTH_MEMBER_REGISTER 설정과

G5_OAUTH_MEMBER_REGISTER_SELECT 설정을 true 로 해야 합니다. 

G5_OAUTH_MEMBER_REGISTER_SELECT 는 false 로 G5_OAUTH_MEMBER_REGISTER 는 

true 로 설정하면 사용자 선택창은 표시되지 않고 바로 회원가입 처리 됩니다.

G5_OAUTH_MEMBER_REGISTER 설정을 fals로 하면 회원가입없이 로그인 처리만 됩니다. 

 

e6c719f47a633dc465213c9c2f72d139_1484878
회원정보 수정 때 비밀번호 확인창입니다. 비밀번호 입력대신 회원 가입 때 사용한 서비스를

클릭하면 인증 후 회원정보 수정창으로 이동합니다.

 

e6c719f47a633dc465213c9c2f72d139_1484878
 

회원정보 수정창에서는 기존 회원의 소셜로그인 서비스 연동을 추가/해제할 수 있습니다.

 

 

소셜로그인 플러그인을 사용하기 위해서는 로그인 앱을 생성하셔야 하며 앱은 아래 각 서비스에서  

직접 추가 생성하셔야 합니다. 

 

페이스북 신청 url : https://developers.facebook.com/apps 

  

구글 신청 url : https://console.developers.google.com 

  

네이버 신청 url : https://nid.naver.com/devcenter/register.nhn 

  

카카오 신청 url : https://developers.kakao.com/apps/new 

 

 

앱생성 후 발급된 API 키 등의 정보를 extend/oauth.extend.php 파일에 설정합니다. 

모든 서비스를 꼭 설정하셔야 하는 것은 아니며 사용하시려는 서비스만 설정하시면 됩니다. 

 

앱설정 때 callback 또는 Redirect URL 은 아래의 예시와 같이 설정하셔야 합니다. 

 

페이스북 : http://example.com/plugin/oauth/callback.php 

 

구글+ : http://example.com/plugin/oauth/callback.php?service=google 

 

네이버 : http://example.com/plugin/oauth/callback.php 

 

카카오 : http://example.com/plugin/oauth/callback.php?service=kakao

 

 

 

플러그인의 업데이트는 https://github.com/chicpro/gnuboard5/tree/oauth 에서 확인할 수 있습니다. 

추천
20

댓글 전체

흐흐 고생하셨습니다.. 으으 좋네요!!!
고맙습니다. 설마 우리 대 "편리"님께서
이것 훔쳐다 팔아 먹는다고 뭐라 하시지는 않겠지요?
판매에 대해서는.. 언제 한번 만나서 커미션에 대해 따로 이야기 하셔야죠.. ㅎㅎㅎ
그냥 편하게 사용하세요. 기술지원만 요청하지 않으시면 됩니당
잘 팔림 한 턱 내겠습니다. ㅎㅎ 고맙습니다.!!

하긴요? 공짜가 좋은 것은 아니지요?
기술지원 받고 커미션 드리는 것이 낫지요? ㅎㅎ

말씀 다시 한 번 감사드립니다. 고맙습니다. 꾸벅 쿵
넘어졌시유 에잇..
잘 쓰겠습니다~^^
페이스북으로 가입하고 정보수정으로 들어가니, 비밀번호가 틀렸다네요.
다른 아이디로도 해봐야겠...

아웃로그인 스킨도 부탁드려요.
대충 소스 일부를 복사해서 적용하긴 했습니다만...


우리 막내 페이스북 아이디로도 정보수정이 안되네요.
제 페이스북과 구글 아이디도 마찬가지...

원본과 좀 다르다면... 스킨 파일들을 테마 폴더에 넣었다는 것
그리고 사이트에 letsgolee님의  'OpenSSL for HTTP'를 적용했다는 것 정도네요.
모바일에서 페이스북 로그인을 하면, 빈 창이 생기네요.
빈 창을 닫고, 원래의 창을 새로고침하면 로그인된 창과 만나게 되는 문제가...

iPhone 4


'iPhone 4' 크롬에서 그랬구요.
'iPhone 4' 사파리와 'iPhone 7' 사파리 및 크롬에서는 위 그림과 같이 가입 이전에서 막히네요.

컴퓨터에서도 접속이 안될 때(다른 컴퓨터여서 그런지)
재부팅해야 되던데... 같은 현상이 아닌가 싶기도 합니다.
안녕하세요? 아미나 최신에 적용해 봤는데 토큰정보가 올바르지 않다 또는 서비스장애가 있다고 나옵니다. php7 입니다. 혹시 문제점 아시는 분들 계신가요?
혹시 아니마홈페이지에서 sns 소셜 로그인 받으셨었나요?
이 플러그인을 사용하기 위해선..
아미나 sns소셜 로그인에서 설정한 내용 그대로 설정하시면 오류 납니다.
위에 나와 있는 설명 차근차근 읽어보시길.
답변주셔서 감사합니다.
위에 설명대로 했는데 이런 현상이 일어나네요
제가 iis +php+mariadb 를 사용하고 있는데 그래서 그럴까요?
페이스북 비번값이 안넘어오는듯합니다. 페이스북으로 회원가입설정하고 로그인후 정보수정누르면 비밀번호가 틀리다고 나옵니다

'mb_password' => $info['pass'],
SNS 로그인 때 각 서비스의 비밀번호는 넘어오지 않습니다.
비밀번호가 넘어온다면 서비스의 비밀번호가 노출될 수도 있는데 그 값을 넘겨줄까요?
아무런 대가없이 재능을 기부해주시니 고맙습니다. 저 같은 아마추어 개발자에게는 아주 많은 도움이 됩니다.
편리님의 소셜로그인이 없었으면 sns를 통한 로그인은 구현하지 못했을 것입니다.
감사드립니다.^^
좋은 정보 감사합니다. 정말 필요한 정보여서 적용중입니다.
다만 적용하다가 오류가 있어서요~

구글 연동중인데

Fatal error: Call to undefined function bccomp() in /home5/standard_r5/q31392/html/plugin/oauth/functions.php on line 77
이런 오류가 뜨는데 bccomp() 찾을수 없단걸 알겠는데...어찌 해야할지 모르겠네요.
bcmath 관련 함수입니다. PHP 설치 때 bcmath 부분을 설치하지 않으신 걸으로 생각됩니다.
호스팅 사용 중이시라면 고객센터에 문의해보시기 바랍니다.
카카오만 회원가입이 이루어지지않는데 앞으로 카카오도 회원가입이 가능하게 하실 계획이신가요? 여하튼 감사합니다.
카카오로 회원가입한 사람들은 불편함이 많을 듯 합니다.
레벨 표시도 없고. 정보수정도 안되는 부분이 발생합니다.
비밀번호를 알지 못하기에..
Fatal error: Call to undefined function curl_init() in /home/very/public_html/plugin/oauth/naver/oauth.lib.php on line 63

Call Stack

#
Time Memory Function Location

1 0.0000 238432 {main}( ) ../callback.php:0
2 0.0029 404416 require( '/home/very/public_html/plugin/oauth/naver/callback.php' ) ../callback.php:32
3 0.0030 411400 NAVER_OAUTH->get_access_token( ) ../callback.php:12

오류가 뜨네요. 어떻게 해야 할까요?ㅠ ㅠ
기존 운영되는 사이트에 첨부파일들만 업데이트하고
개발자페이지에 정보등록 후 로그인하니

차단된 URL: 리다이렉트 URI가 앱의 클라이언트 OAuth 설정에서 허용되어 있지 않기 때문에 리다이렉트할 수 없었습니다. 클라이언트와 웹 OAuth 로그인이 켜져 있고 모든 앱 도메인이 유효한 OAuth 리다이렉트 URI인지 확인하세요.

이 문구가 나옵니다.

페이스북 기준

OAuth 리다이렉트

http://제 호스팅.cafe24.com/plugin/oauth/callback.php

이렇게 설정했는데 잘못된 부분을 알 수 있을까요?
편리님 위와 같이 다 따라고 하고 소셜 로그인 진행을 하면 정보 제공 동의에서 허용을 누르면 모두 올바른 방법으로 이용하라는 팝업이 뜹니다. 혹시 원인을 알 수 있을까요?
감사합니다.
편리님 에러 로그를 찾아보니 다음과 같습니다 한번 봐주시면 정말 감사하겠습니다.
thrown in /home/www//plugin/oauth/functions.php on line 77" while reading response header from upstream, client: 162.158.255.67, server: domain.com, request: "GET /plugin/oauth/callback.php?service=google&state=e64580asdfasdfasdfasdf5da37adf6&code=4/-VgcqtkhasdfafyZETuC_F0J0Nasdfasdf9YMDuOk HTTP/1.1", upstream: "fastcgi://unix:/run/php/user.sock:", host: "domain.com"
2017/04/12 17:34:18 [error] 15497#15497: *3 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function bccomp() in /home/www/plugin/oauth/functions.php:77
Stack trace:
오류 마지막에 bccomp 함수를 사용할 수 없다고 표시되고 있습니다.
bcmath 관련 라이브러리가 제대로 설치되어있는지 확인해 보시기 바랍니다.
http://php.net/manual/en/bc.installation.php
페이스북으로 로그인 된 상태에서 사용자의 Facebook Access_token 값 불러오려면 어떻게 해야할까요 ㅠㅠ?
check_valid_access_token() 함수인거 같긴 한데 ㅠㅠ
편리님 좋은 플러그인 감사합니다.

위에 원본소스를 적용해서 가입확인창을 안뜨게 설정을 하면 로그인이 잘되는데요

가입확인창을 뜨게 하고 확인을 누르면 무한로딩되는 화면처럼 흰화면나오고 다음으로 넘어가질 않습니다.

혹시 다른분도 이런현상이 있는분 계신가요..?

회원가입 확인 버튼 클릭시

G5_PLUGIN_URL.'/oauth/login.php?service='.$service.'®ister=Y 에서 넘어가서

/oauth/login.php에서 정지되는것같습니다.
네이버로그인시 다 잘되는데 네이버로그인창에 아디비번넣고 로그인누르면 일부폰에서 /plugin/oauth/callback.php 에서 화면이 멈추고 '올바른 방법으로 이용해 주십시오."뜹니다. 무슨 현상일까요? 같은 아이디로 다른 모바일에서 하면 가능하더라구요. 그래서 폰 설정을 보니 쿠키차단이 되어 있던걸 허용하니까 되더라구요. 이런경우는 설정을 본인이 바꾸지 않는 이상 네이버아이디로 로그인이 힘든걸까요?
답변 감사합니다. 편리님.
ㅈㅅ하지만 시간나실떄 하나 더 조언 부탁드립니다.

config.php설정에서는 define('G5_COOKIE_DOMAIN',  ''); //값이 없는 상태에서

네이버아이디로 로그인을 하는데 있어서
아이폰 사파리사용시 사파리 환경설정에서 쿠키차단을
'항상허용'하면 문제없는데
'항상차단'을 시키면
아이폰 사파리주소창에 도메인칠때
www 가 있는 경우에는 네이버 로그인이 안되고 (알럿:'올바른방법으로 이용해주세요'")
www 가 없는 상태에서는 네이버 로그인이 잘 됩니다.
이런경우가 생깁니다. 설정문제 같아보이는데요

참고로
네이버앱api 설정에서는 연결URL, 콜백 모두 www를 안붙이고 설정한 상태입니다.

그래서 아래처럼 config파일 수정하고 잘됩니다.
config.php설정에서는 define('G5_COOKIE_DOMAIN',  '.domian.kr'); //도메인.설정했습니다..

설명이 잘 된건지 모르겠는데.
무슨현상인지 조언을 주실 수 있을까요?
쿠키도메인을 마지막처럼 설정하지 않으시면 www 가 붙은 주소와 그렇지 않은
주소로 접속했을 때 세션 정보가 공유되지 않습니다. 그래서 콜백 때 정보가 세션에
저장되지 않아 문제가 발생하는 것 같습니다.
select password('�[k=���]�'') as pass

1064 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '') as pass' at line 1

error file : /plugin/oauth/callback.php

페이스북으로 소셜 로그인을 하면 가끔씩 화면에 이런 오류가 뜨면서 멈춥니다.
이 상태에서 새로고침 하면 윗분처럼 "올바른 방법으로 이용해 주십시오." 가 뜹니다

오류메시지를 검색해보니 mysql 버전이 달라서 password 규칙이 맞지 않을때 뜬다는데
아무리 찾아봐도 password() as pass 같은 건 안보이는데
어디를 수정해야하는걸까요? 도와주세요 ㅠㅠ
회원가입 확인을 누르면 이런 이미지가 뜹니다 그리고 본사이트도 밑에랑 같은 이미지가 뜨는데 머가 잘못된걸까요... 서버는 이렇게 설정되어 있습니다. UTF-8 (PHP7.0, mariadb-10.0.x)
이미지만으로는 어떤 오류인지 짐작할 수 없습니다.
언어도 제대로 표시되지 않는 것 같으니 파일의 인코딩부터 우선 확인해 보시기 바랍니다.
plugin/oauth/facebook/oauth.lin.php
46번째 줄
        return $this->authorize_url.'?client_id='.$this->client_id.'&response_type=code&redirect_uri='.$uri.'&state='.$this->token.'&scope=email';

혹은 펑션 check_valid_state_token($token),  function get_access_token($code)
에서 토큰 정보에러가 뜨는거 같은데 정확히 어딘지도 뭐 때문인지도 잘 모르겠습니다 ㅠㅠㅠ...
get한 code에서 문제가 있는지 아닌지
어떻게 알 수 있는 방법 없을까요?
exit; 걸면서 하고 있는데
여기다 싶으면 저기서도 나고 이러니까 문제를 못찾겠고 정말 미치겠네요 ㅠㅠ

혹시 토큰 정보 관련해서 문제 아시는거 있으세요?
혹은 좋은 에러 찾는 방법 뭐 없을까요?
궁금한 점이 처음 네이버 아이디로 로그인 하는 경우에는
================
해당홈페이지에서 유져님의 기본프로필(별명, 프로필사진, 성별, 생일, 연령대), 이메일, 이름을(를) 받습니다.
제공된 정보는 이용자 식별, 통계, 계정연동 및 CS 등을 위해 서비스 이용 중 보관 됩니다.
제공할 권한 수정
동의하기 취소
================
의 동의창이 나오는데, 한번 회원탈퇴(소셜 로그인 연동 해제)하고 난 뒤 재가입 할 때에는 해당 창이 나오지 않고 바로 가입이 되네요. 이미 네이버 서버에 해당 아이디로 해당 사이트에 동의 내역이 존재해서 그런걸까요?

*그누보드 기본 멤버에도 동시 가입 후 회원 탈퇴시  g5_social_member 에서는 제대로 삭제가 되나
g5_member 에서의 탈퇴는 연동이 안되어있는 것 같네요.
처음에 표시되는 내용은 네이버 로그인 앱에서 권한 승인을 요청하는 것입니다.
한번 승인하면 로그인 앱이 변경되지 않으면 승인 내역이 있기 때문에 표시되지 않습니다.

연동해제는 회원 탈퇴와는 다르기 때문에 member 테이블에서의 삭제는 회원 탈퇴 기능을
이용하셔야 합니다. 연동 해제 때는 member 테이블의 정보는 삭제되지 않습니다.
좋은 자료 감사합니다^^
믿고 쓰는 편리님 자료라 아무생각 없이 영카트에 반영하였다가 비회원 구매 버튼이 사라졌길래 왜그런가 해서 봤더니 영카트랑 스킨이 약간 다르네요. 다시 수정해서 잘쓰고 있습니다.ㅎㅎ
좋은 자료 감사합니다 !
다름이 아니라 네이버 로그인 했을시 기존에 회원가입 권한이 LV2로 올라가야하는데
네이버 로그인으로 가입이 완료되었을시 회원권한이 1로 유지되고 있습니다 ㅠ
callback.php 부분에서 mb_level권한도 2로 되어있는거 확인했는데 왜 권한이 1로 되는지 알 수 있을까요?ㅠㅠ
플러그인 코드 상에 레벨 2로 설정되는 부분이 있는데도 레벨이
지정되지 않는 것은 회원관련 부분에서 코드를 수정하셨거나
다른 플러그인 등을 사용하기 때문일 것이라 생각됩니다.
직접 해결이 어려우시다면 개발자 등에게 의뢰를 해보시기 바랍니다.
우선 감사의 말씀 부터 드립니다. 필요해서 찾아보니 이미 편리님께서 만들어 놓으셨네요.
페북과 구글만 연결을 해서 사용하려 는데 한 가지 오류 아닌 오류가 있어서요.

브라우저의 다른 탭에 이미 페북이 로그인 되어있는 경우, 그누보드의 로그인 화면에서 페북 로그인을 클릭하면 다음의 에러 화면이 나면서 로그인이 안됩니다.

혹, 제가 페북쪽에 설정을 잘못 한것인가요?
Facebook Login 설정의 Valid OAuth redirect URIs 에 www 붙은거랑 안붙은거 모두 등록은 했습니다.

어디를 수정해야 할지 알려주시면 감사하겠습니다.

에공... 다시 눈 부릅뜨고 살펴보니 오타가 있었습니다. plugins --> plugin 수정 후 그 부분은 넘어 갑니다. 로그인 한 후 아래의 에러 창이 뜨는 건 제가 뭔 가를 잘못 한 것이라 생각하고 또 파봐야 겠습니다.

"서비스 장애 또는 정보가 올바르지 않습니다."

구글은 아무런 저항 없이 연결이 되었는데 페북은 왜 이러는지 ....
자답입니다.
역시 페북 앱 세팅에 문제가.... 아마 어제 제가 안되서 이것저것 손을 댄게 문제를 일으켰네요.
App > Settings > Advanced 에 가면 Client Token 설정하는 부분이 있는데 여기의 Require App Secret 을 Yes 로 변경을 했나봅니다 (기억이 가물가물.. 일단은 발뺍을 해봅니다). 아래 이미지의 빨간 박스부분. 이걸 No 로 변경하고 나니 잘 됩니다.

안녕하세요. 편리님
다름이 아니고, 첫번째 버전을 쓰다가 최근에 v2로 패치를 했는데요.
패치한 후부터 로그인을 하면, 메인 latest 로 넘어가는데
그전에는 로그인한 후에도 해당 게시판에 머물러 있었거든요.
(board 스킨에 아웃로그인을 연결해서 사용을 합니다.)
제가 편리님 v1을 사용했을 때 수정한거 같기도 한데
어느 부분인지 기억이 잘 안나서 헤메고 있습니다.
어떤 부분을 수정해야 하는지 알려주시면 정말 감사하겠습니다 ~
답변 감사합니다.
제가 다시 확인해보니 소셜로그인 v1 설치할 때 수정한게 아닌거 같습니다.
편리님이 플러그인 카테고리에 올리신 소셜로그인 v1 을 다시 다운 받아서
기존의 v2를 전부 삭제한 후 설치해 보았습니다만, 페이지 이동이 없었습니다.

요약
v1 : 소셜 로그인을 하면 해당 게시판에 머물러 있는다.
v2 : 소셜 로그인을 하면 메인 페이지로 넘어 갑니다.

그래서 살펴본 결과 plugin/oauth/callback.php 파일을 v1 으로 변경해주는 것만으로
해결이 가능했습니다만, 기존의 v2의 callback.php 파일에서 어떤 부분을 수정해야
메인 페이지로 넘어가지 않고 로그인한 게시판에 머물러 있을 수 있는지 조금만
힌트를 주시면 정말 감사하겠습니다.

(게시판마다 아웃로그인을 달아놓고 사용중입니다. 해당 게시판을 서브메뉴로 접속한
다음에 아웃로그인으로 로그인을 하고 이용하도록 만들어 놓았습니다. 그런데 해당 board를 호출한 후에 해당 board에서 아웃로그인으로 sns 로그인 시 메인페이지(latest)로 넘어가서 조금 불편한 감이 있습니다.)

최대한 제가 해결해 보려고, 의심이 가는 코드들을 삭제해 보거나 변경해 보거나
하고 있습니다만, 일주일 째 아무리 해봐도 답이 안나와서 조금이라도 도와주시면
정말 감사할 듯 싶습니다 ~
회사 업무 때문에 시간을 내기 힘들어서 코드를 검토할 여유가 없습니다.
꼭 수정을 하셔야겠다면 제작의뢰를 통해 수정해 주시기 바랍니다.
네이버 로그인 만 적용하여 쓰고 있는데요 그누보드 회원탈퇴 팁을 이용해서 회원 탈퇴 기능을 추가해도 일반회원은 탈퇴가 되는데 sns 로그인 한 회원은 탈퇴를 해도 자동으로 계속 로그인이  됩니다 혹시이 부분에 대해서 팁 좀 알려주시면 감사하겠습니다 탈퇴한 회원입니다  팝업창을 어디 파일에다가 추가를 해야 될까요 꼭 좀 알려주세용~~~~
회사 업무로 시간을 내기 어려운 상황입니다.
플러그인의 유지보수가 아닌 기능 수정 등에 대해서는
확인해드리기 어렵습니다. 제작의뢰를 통해 수정해주시기 바랍니다.
check_valid_state_token 체크는 통과하는데
get_access_token 체크를 실패합니다.
$this->token 값을 잃어버리는거때문에 그런거같은데 어떤 부분이 문제인지 알 수 있을까요?
다른 사이트에서는 잘되는걸보면 소스상 문제는 아닌거같은데...
네이버 아이디로 로그인이 잘 되다가
.htaccess 파일을 통해 http 로 된 것을 모두 https 로 바뀌도록 아래와 같이 설정한 후 네이버 아이디로 로그인에서 등록되지 않은 임의의 사이트라고 에러가 떠서 접속이 안됩니다. 혹시 어떻게 해야 해결될까요?

AddType application/x-httpd-php54 .php
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.abcd.com/$1 [R,L]
https:// 로 해 봐도 안되고, http://  로 해도 안되어서
다시 .htaccess 파일을 삭제했더니 정상적으로 네이버아이디로 로그인이 원래대로 됩니다.

.htaccess 파일을 업로드한 후에도 네아로를 사용하고 싶은데 며칠째 방법을 못 찾네요..
편리님, 답변 감사합니다.
안녕하세요 편리님!! 그누보드 초보가 여기까지 적용하게 할 수 있게 해주셔서 너무 감사합니다.

다 적용했구요, 사용가능한데요, 내정보를 들어가면 비밀번호를 입력하라고 하는데.. 비밀번호다 틀리다고합니다.

어디를 확인해야 하나요?? ㅠㅠ
스킨 수정을 제대로 하셨다면 아래 이미지처럼 출력되어야 합니다.


비밀번호는 가입 때 무작위로 기록되기 때문에 번호는 일치하지 않게 됩니다. 이  플로그인에서는
회원정보 수정 때 다시 인증을 거쳐서 정보 수정창으로 넘어가도록 되어 있습니다.
17-07-19 12:20 로그인 처리 후 스킨의 url 필드에 있는 정보를 이용해 페이지 이동토록 수정했습니다.
https://github.com/chicpro/gnuboard5/commit/c596393a69174efcd41c7f900c8408fe03ff4abb
감사합니다 편리님 설명을 통해 누락된 부분확인하여 정상작동 시켰습니다.

또한 금일 업로드 해주신 내용으로 페이지까지는 제자리 로그인이 되는데..

해당 게시물로는 넘어가지 않는데 어디를 수정해야할지 알 수 있을까요?
웹페이지에 있는
<input type="hidden" name="url" value="">
이 필드의 값을 가져와서 페이지 이동 시킵니다.
웹페이지에 위 필드가 있고 이동하시려는 url 정보가 있어야 합니다.
<input type="hidden" name="url" value='<?php echo $login_url ?>'>

네 이런식으로 붙어있습니다..

근데 url을 보니까

&amp;wr_id=14 이런식으로 붙어있어서

&amp; 이것을 &이것으로 수동으로 바꾸니까 되는데

bbs/login_check.php 여기서 바꾸는건가요??


if ($url) {
    // url 체크
    check_url_host($url);

    $link = urldecode($url);
    // 2003-06-14 추가 (다른 변수들을 넘겨주기 위함)
    if (preg_match("/\?/", $link))
        $split= "&amp;";
    else
        $split= "?";

    // $_POST 배열변수에서 아래의 이름을 가지지 않은 것만 넘김
    foreach($_POST as $key=>$value) {
        if ($key != 'mb_id' && $key != 'mb_password' && $key != 'x' && $key != 'y' && $key != 'url') {
            $link .= "$split$key=$value";
            $split = "&amp;";
        }
    }
} else  {
    $link = G5_URL;
}

goto_url($link);

안녕하세요.

사이트에 ssl 적용후 페이스북은 소셜로그인이 문제 없이 되는데 구글에서는 아래와 같은 오류페이지가 뜨면서 소셜로그인이 안되고 있습니다.

무엇이 문제인지 모르겠습니다.

400. That’s an error.

Error: redirect_uri_mismatch

The redirect URI in the request, https://abc.com:443/plugin/oauth/callback.php?service=google, does not match the ones authorized for the OAuth client. Visit https://console.developers.google.com/apis/credentials/oauthclient/623257731041-k2mk579k4el54agdhvj2es9emafnou4t.apps.googleusercontent.com?project=623257731041 to update the authorized redirect URIs.

Learn more

Request Details
That’s all we know.
redirect url 에 등록된 정보와 플러그인에서 요청하는 url 정보가 일치하지 않아서 입니다.
앱에 등록된 url을 https 로 변경해 보시기 바랍니다.
로그인이 필요한 페이지에서

회원가입해도 제자리 로그인을 하려고 하다가 실패하고 주소를 머금은 상태로 로그인페이지까지 이동시키려 합니다..

define('G5_OAUTH_MEMEBER_RESULT_URL', G5_HTTP_BBS_URL.'/login.php?url=<?php echo $urlencode;');

이런식으로 해보려고 했는데 불가능할까요?
문의드립니다.^^

회원가입약관 파일에도 소셜로그인을 삽입하려고 합니다.

참고로, 현재 Sir 웹사이트 회원가입약관 페이지를 보면 나오더라구요~
https://sir.kr/bbs/register.php

/skin/member/basic/register.skin.php (회원가입약관) 파일에

/plugin/oauth/register_form.skin.inc.php 파일을 인쿠르드 삽입하면 되나요?
(아니면. .  login.skin.inc.php?)

꼭 답변 부탁드립니다~^^
감사합니다~ 잘쓰고 있습니다.
궁금한게 있어서 문의드립니다.
회원가입 부분에서는 소셜로그인 버튼이 나오지 않게 처리가 되어 있던데요.

plugin/oauth/register_form.skin.inc.php

if($w != 'u' || $is_guest)
    return;

원래 가입한 회원만 정보수정에 들어갔을시에 소셜계정을 연결할수 있도록 일부러 이렇게 하신거죠?
이 부분이 좀 궁금해서요^^
17-07-19 수정 정말 감사합니다 ~
저 혼자 어떻게든 해볼려고 했는데, 아이고... 이걸 수정해주시다니 ㅠㅠ 잘 쓰겠습니다 !!

저번 '소셜로그인1'도 그렇고 이번에도 거의 재능기부 하시다 싶이 해주신건데
그냥 이렇게 넙죽넙죽 받기만 하네요 ~ 글로는 전부 표현하지 못할만큼 감사합니다 : )
정말 죄송합니다만.. 쇼핑몰 작업 중 이번에 그누보드를 처음 써봤습니다.
그런데 '소셜로그인1'에 있는 내용을 참고하고 올려주신 파일을 그대로 폴더로 덮어쓰기 해서
잘 넣었는데 저는 로그인 화면에 소셜 버튼 조차도 나오지 않는데..
바쁘실텐데 죄송하지만 조언좀 부탁드립니다.
소셜 로그인2를 설정하고 잘되었습니다. 좋은자료정말 감사드립니다.

그런데 이부분이 해결되니 다른부분이 말썽이네요 ㅠ

이미지에서 보시다시피 버튼하고 아이디 비번 부분이 틀어져 버렸는데 이부분은 어디를 손대야 하는것인가요?ㅠ

조언부탁드립니다.
안녕하세요.
소셜로그인을 만들어주셔서 감사하게도 잘 쓰고 있습니다
사이트로 연결은 하였습니다만, 새로운 아이디로 네이버 연동을 하려고 해도
자꾸
'다른 회원이 사용 중인 이메일로는 회원가입할 수 없습니다'
이 문구가 떠서 가입이 안되네요 ㅠ
어떻게 처리할 방법이 없는지 문의드립니다..
좋은자료 만들어 주셔서 감사합니다. 감사히 잘 쓰겠습니다 ^^
카카오 연동시에는 url 이 아니라 path 설정이라
/plugin/oauth/callback.php?service=kakao 이렇게 입력하면 되네요.
카카오 : 서비스장애... -> profile 데이터들을 못가지고오는거같음..
페이스북 : 토큰 정보 올바르지않다고함..  -> 이건 대체 왜..?

구글이랑 네이버는 했는데.. 해결하신분...
각 소셜로그인앱들 키 발급과 설치 방법을 자세하게 정리해봤습니다. 참고하세요.
http://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=66
카카오 로그인을 하면 첨부이미지 처럼
 "잘못된 리디렉션 : http://ccf.co.kr/plugin/oauth/callback.php?service=kakao가 등록 된 값 중 하나와 일치하지 않습니다.  카카오 개발자 사이트의 앱 설정을 확인하십시오."
노출됩니다.

카카오 개발자 사이트 앱 설정에서 REST API 키 받아
/extend/oauth.extend.php 카카오로그인 API 정보 에 저장하고

플랫폼 > 웹에서  Redirect Path 경로 저장했습니다.
Client Secret는 상태 OFF로 적용 했습니다.

뭐가 문제일까요? 도와주세요ㅠ
카카오 로그인 성공하시분 꼭 알려주세요. 부탁드립니다~^^

좋은 프로그램 잘 사용하고 있습니다  감사합니다.
한가지, 질문이 있습니다. 소셜로그인버튼을 클릭하면 무조건 아이디와 비번을 넣도록 하려면 어떻게 해야합니까?
여러개의 아이디를 가지고 돌아가며 로그인을 하려고 하는 데 도무지 아이디 비번 넣는 페이지를 패스해버리니까 도무지 아이디를 갈아탈수 가 없습니다.
페이스북 : http://example.com/plugin/oauth/callback.php?service=facebook

페이스 북에서 앱 도메인 에러가 날경우 ?service=facebook 을 추가 해주시면 됩니다.
안녕하세요?
페이스북 oauth 연동 했는데요, 처음에는 로그인이 잘되었는데, 로그아웃하고 다시 로그인하니
"토큰 정보가 올바르지 않습니다." 메시지가 뜨고 있습니다.

저의 환경은
그누보드 5.2.7
php 7.1.9
apache 2.4.6

이상태로 계속 로그인 시도 하면 "서비스 장애 또는 정보가 올바르지 않습니다." 메시지 뜨고 있는데,
도움이 필요합니다..ㅠㅠ

oauth 버전은 아래 깃허브 버젼 플러그인으로 하였습니다.
https://github.com/chicpro/gnuboard5/tree/oauth/plugin/oauth

구글은 잘되고 있습니다~~ㅎ

관련되어 이슈해결하신분 공유부탁드리겠습니다.
감사합니다.
위의 이슈에서 oauth 버젼을 맞추어서 해결하려고 하였지만 동일한 증상이 발생되고 있네요.


/plugin/oauth/facebook/oauth.lib.php
$this->authorize_url = 'https://www.facebook.com/v2.11/dialog/oauth';
$this->token_url    = 'https://graph.facebook.com/v2.11/oauth/access_token';


증상이 로그인이 잘될때와 안될때가 있습니다.ㅠ
감사합니다~ 덕북에 소셜 커머스 로그인 붙이는 일을 한방에 해결했습니다.
모든 SNS 로그인 잘 됩니다. 소셜 API 설정 화면에서 설정만 잘 하면 문제 없이 로그인 됩니다.
감사 감사~~~ 즐거운 주말 보내세요~^^
위의 페이스북 로그인 관련 문의 내용 자답드립니다.

서버에서 oauth 페이스북 인증하려고 curl -> 통신 하려고 할때
자동으로 ipv6 Network is unreachable 오류가 발생하고 있었습니다.

"Failed to connect to 2a03:2829:f22c:20d:face:b00c:0:1: Network is unreachable"

서버설정에서 ipv6  설정에서 사용안함 으로 설정해도 동일한 증상이 있네요.
해결은 일시적으로 curl -> file_get_contents 변경하여 해결하였습니다.

/plugin/oauth/facebook/oauth.lib.php
$json = file_get_contents($url);

참고해주세요.
편리님이 알려주신 방법은 이미 해보았습니다.
curl_setopt($ch, CURLOPT_IPRESOLVE , CURL_IPRESOLVE_V4);

curl 옵션에서 ipv4 사용해서 시도 하면 ipv6 관련 오류 메시지는 안뜨는데요

error==> Connection timed out after 1001 milliseconds
위의 타임아웃 오류가 발생됩니다.

타임아웃 시간을 늘리면 늘어는 시간만큼 응답이 오지 않고, waiting 으로
응답 없음 상태로 무한정 wait 하는거 같습니다.

서버에서 curl 통신으로 페이스북과 connection이 잘 될때는 바로 응답이 오지만, 안 될땐 계속 안되고 있습니다.
curl 통신으로 여러 방법을 시도 했지만, 저의 케이스인 경우 페이스북만 잘 안되는것 같습니다.
(카카오톡 로그인, 구글 로그인은 이상없습니다.)

감사합니다.
좋은 플러그인 너무 감사합니다 ^^
"회원가입하시겠습니까? " 확인창에서 취소를 누르면 일시적으로 로그인이 되는것 같아요. 가입이 안된건데도 로그인창에는 로그인 된걸로 보이네요
취소 누르는 경우에는 아예 SNS연동이 안되도록 할수는 없을까요?
소셜로그인은 사이트에 회원가입없이 로그인 기능을 제공하기 위한 것입니다.
문의하신 대로 하시려면 플러그인 내의 코드를 직접 수정하셔야 합니다.
네이버로그인시 $json = curl_exec($ch); 이부분에서 토큰값을 못가지고 와서 토큰에러가 나는댑
$json = curl_exec($ch);
$json 배열안에 값이 안들어가는건
curl 자체가 실행이 안됬다는거 아닌가요?ㅠㅠ
혹시 문제가 있다면 어떤부분이 문제일까요....ㅠ
token 등의 정보가 세션에 제대로 저장되어 있는지 확인해보시고
curl 오류나 curl 요청 때는 응답 값이 어떻게 표시되는지  확인해 보셔야 할 것 같습니다.
get_auth_member_info 함수에서 if(strlen($no) > 16) $no = str_baseconvert($no); 부분에서 중복될수도 있지 않을까요. $no값이 16자리 이하 숫자와 17자리 이상 숫자가 변환해서 같은 값을 가지는 사람이 같은 사이트에 가입할 확률은 거의 제로이겠죠 ㅋㅋㅋ
플러그인 감사합니다^^

적용을 하려고 하는데

카카오톡에서 에러가 나옵니다..ㅠㅠ


error="redirect_uri_mismatch", error_description="Invalid redirect: http://1.255.226.26/plugin/oauth/callback.php?service=kakao does not match one of the registered values. Please check app settings on kakao developer site."

이렇게 나오는데 뭐가 문제여서 그런걸까요;;;


그리고 Redirect Path에는 뭘 입력해야 하는거에요?
운영 중인 사이트의 URL을 입력합니다.
설명의 예시처럼 example.com 이라면
http://example.com/plugin/oauth/callback.php?service=kakao 이라고 입력을 해야합니다.
redirect url 과 실제 사이트 url이 일치하지 않으면 오류가 발생합니다.
답변 감사합니다^^

카카오톡은 오류없이 진행이 되는데

네아로 검수시 비밀번호를 받기 때문에 승인거부가 됐는데

제가 네이버에 뭔가 잘못요청한거에요?

비밀번호를 안받는대신 회원정보수정페이지에서 소셜로그인 버튼 클릭시 회원정보 수정페이지로 이동한다는걸 명시하면 될까요?

좋은 소셜로그인 기능을 알려주셔서 감사합니다.
소스 중에서 궁금한 사항이 있어서 문의드립니다.

login.skin.inc.php 에서 각 소셜 버튼을 클릭하면 해당 login.php를 불러오잖아요. 해당 login.php에 들어가서 소스를 보면  아래와 같은데요.

$oauth = new NAVER_OAUTH(G5_NAVER_OAUTH_CLIENT_ID, G5_NAVER_OAUTH_SECRET_KEY);

$oauth->set_state_token();

$query = $oauth->get_auth_query();

여기서 set_state_token();의 역할과 $oauth->get_auth_query(); 이 함수의 리턴값이 성공할때와 실패할 때 어떤 값을 리턴해주는지 알 수 있을까요?
카카오는 로그인이 되는데
구글이 /oauth/google/callback.php 여기서
$info  = get_oauth_member_info($oauth->profile->id, $oauth->profile->name, 'google');
걸리는데 구글에서 정보를 못가져오는건가요 아니면 메소드를 변경 해야될까요?
api랑 클라이언트id,pw는 확실히 넣었습니다.

HTTP ERROR 500 이렇게 에러가 뜨네요
HTTP ERROR 500 오류는 프로그램 코드에 오류가 있거나 확장모듈 등이 없을 때
발생합니다. 오류 로그를 먼저 확인해보시고 조치를 취하셔야 할 것 같습니다.
최신버전에서만 설치가 되나요? 설치를 했는데 버전은 2017년 10월버전 그누보드인데... sns가 안보입니다. oauth.extend.php에서 설정도 다 했는데 말이죠...ㅜㅜ
안녕하세요,

혹시 페이스북계정으로 로그인 중에서

Insecure Login Blocked: You can't get an access token or log in to this app from an insecure page. Try re-loading the page as https://

이런 오류 메세지가 나오는데, 위에 댓글들 보면서 이것저것 해봣는데도 해결이 안되고 있습니다.
oauth 리다이렉션쪽 문제인가 싶어서 도메인링크도 계속 확인해봤는데도,
저 오류가 발생하는데, 도움을 주실수 있나요?
편리님
저는 에러가 뜨는데요.

'Warning
차단된 URL: 리디렉션 URI가 앱의 클라이언트 OAuth 설정의 화이트리스트에 없으므로 리디렉션하지 못했습니다. 클라이언트 및 웹 OAuth 로그인이 설정되었는지 확인하고 모든 앱 도메인을 유효한 OAuth 리디렉션 URI로 추가하세요.'

이런 에러가 뜨는데 어떻게 해야 되나요?.....
파일 다 넣었고 theme -> community 안 스킨에다가 첨부된 파일을 붙쳐넣었는데 로그인창에 이미지 버튼이 뜨지 않습니다  어떻게 해야하나요?
config.php

https 적용문제로 해당파일에 도메인을 입력하니
sns전부 적용이안되는군요.


/*
보안서버 도메인
회원가입, 글쓰기에 사용되는 https 로 시작되는 주소를 말합니다.
포트가 있다면 도메인 뒤에 :443 과 같이 입력하세요.
보안서버주소가 없다면 공란으로 두시면 되며 보안서버주소 뒤에 / 는 붙이지 않습니다.
입력예) https://www.domain.com:443/gnuboard5
*/
define('G5_DOMAIN', '');
define('G5_HTTPS_DOMAIN', '');
요런 메시지가 뜨는군요... 혹시 몰라 키를 몇번 재발급해서 적용해봤지만 동일하게 뜹니다.... ㅠㅠ
초보자 인사드립니다
제거 소설로고인을 올리려고 하는데 네이브는 했는데 카카오톡이 안되내요 도움쫌 주실분은 없는지요
그림올리겠읍니다.

할수있게끔 답쫌주세요
전체 503
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT