구글 리캡차 reCAPTCHA 를 그누보드 기본 캡차로 변경하는 플러그인 - 그누보드 5.2 용 > 그누보드5 플러그인

그누보드5 플러그인

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

구글 리캡차 reCAPTCHA 를 그누보드 기본 캡차로 변경하는 플러그인 - 그누보드 5.2 용 정보

구글 리캡차 reCAPTCHA 를 그누보드 기본 캡차로 변경하는 플러그인 - 그누보드 5.2 용

첨부파일

recaptcha.zip (2.4K) 1214회 다운로드 2016-11-17 14:19:31

본문

 
********
 
그누보드 5.3 에는 구글 갭챠가 기본기능으로 추가가 되었습니다. 
따라서, 그누보드 5.3 에서는 이 플러그인이 정상 동작하지 않습니다. 
본 플러그인은 그누보드 5.2 용입니다. 
 
 
========
 
 
Invisible reCAPTCHA 를 적용한 버전이 새로 나왔습니다. 
 
 
 
 
 

그누보드5 의 기본 캡차인 kcaptcha 대신에, 구글의 캡차인 reCAPTCHA 를 사용하도록 변경하는 플러그인 입니다.


1. 구글 리캡차를 사용하려면, Site Key 와 Secret Key 를 발급받아야 합니다.

리캡차를 사용하려는 웹사이트 도메인을 구글에 등록하고, 도메인 정보가 포함된 site key 와 secret key 를 발급받아야 합니다.
도메인 정보가 일치하지 않으면, 구글 리캡차는 동작하지 않습니다.
웹사이트 도메인 등록하는 곳 : https://www.google.com/recaptcha/admin


2. 설치 방법

2-1. 플러그인 파일 업로드

위 사이트에서 등록후 부여되는 site key 와 secret key 를,
본 플러그인 폴더 안에 있는 recaptcha_api.php 파일을 열어, 상단에 있는 변수값에 입력합니다.

본 플러그인 폴더를 그누보드 plugin 폴더에 업로드 합니다.

2-2. config.php 파일 수정

그누보드 루트 폴더에 있는 config.php 에서
define('G5_CAPTCHA_DIR', 'kcaptcha');
라고 되어 있는 부분을
define('G5_CAPTCHA_DIR', 'recaptcha');
로 변경합니다.

업로드시에 폴더명을 변경하였다면, 적절하게 맞춰 주시면 됩니다.


3. 제한 사항

curl 을 이용하므로, PHP curl 모듈이 설치되어 있어야 합니다. 일반적으로 설치되어 있습니다. ^^
file_get_contents 를 사용하기 위해서는 소스의 수정이 필요합니다.


4. 참고 및 유의 사항

- 그누보드에서 사용되는 모든 캡차가 변경됩니다. 글쓰기, 회원가입, 쪽지 등

- recaptcha response 값을 서버단에서도 verify 합니다. secret key 가 필요합니다.

- 게시판 글쓰기에서만 reCAPTCHA 를 사용하고자 하신다면
http://sir.co.kr/bbs/board.php?bo_table=g5_skin&wr_id=7069
여기를 참고하시기 바랍니다.

- 테스트 url : http://www.baragi.net/bbs/write.php?bo_table=test_recaptcha


5. 수정사항

- 20150721
recaptcha 폴더 안에 빈폴더 mp3/basic 를 하나 만들어 주세요.

- 20161117
jQuery 1.9+ 에서 live 메소드가 없어졌습니다. recaptcha.js 파일 소스에서 live 가 on 으로 변경되었습니다.
참고 : http://www.baragi.net/bbs/board.php?bo_table=dev&wr_id=8635


6. 추가사항

6-1. CA 인증 관련 오류가 날 경우 아래 구문을 추가해 주세요. ( 참고 : http://sir.kr/qa/112257 )

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

6-2. 모바일환경 등에서 가로사이즈가 커서 틀이 깨질때, 세로 형태의 위젯으로 바꿀 수 있습니다.

recaptcha_api.php 파일 안에 있는 g-recaptcha 에 data-size="compact" 를 추가해 주시면 됩니다.

추천
7

댓글 전체

구글 리캡차의 사이즈가 커서 그런 것 같은데요..
사이즈 조절을 할 수가 없어서, 어떻게 할 수 있는 부분이 아닌 것 같습니다. ㅠㅠ

<?php
//	google reCAPTCHA 는 캡차 코드가 사용되는 도메인을 등록해야 사용할 수 있습니다.
//	웹사이트 도메인 등록하는 곳 : https://www.google.com/recaptcha/admin
//	캡챠 코드가 사용되는 웹사이트 도메인을 등록한 후에, 주어지는 Site Key 와 Secret Key 를 아래 변수값에 입력하면 됩니다.
//	Site Key 에 등록된 도메인이 아니면, 구글 리캡차는 동작하지 않습니다.

$recaptcha_site_key = "6LejhQQTAAAAABIQ782EzZH32wavvB97qN3i_F5Q";
$recaptcha_secret_key = "6LejhQQTAAAAACI2erK7LM1rx87XYM2bzAPJOnm3";
$recpacha_css="";
if(G5_IS_MOBILE){
$recpacha_css="style=\"transform:scale(0.77);transform-origin:0 0\"";	
} 

// 구글 리캡챠 HTML 코드 출력
function recaptcha_html()
{
	global $recaptcha_site_key;

	$html = "";
	$html .= "\n".'<div id="google-recaptcha">';
	$html .= "\n".'	<script src="https://www.google.com/recaptcha/api.js"></script>';
	$html .= "\n".'	<div class="g-recaptcha" data-sitekey="'.$recaptcha_site_key.'" '.$recpacha_css.'></div>';
	$html .= "\n".'</div">';
	$html .= "\n";
	return $html;
}

if ($_POST['gubun'] == "1") { echo recaptcha_html(); }
?>

해보세요
위의 코드
$recpacha_css="style=\"transform:scale(0.77);transform-origin:0 0\"";
부분에 사파리 등을 위해 추가를 해 주면 됩니다.
아래와 같이 수정하여 해 보시기 바랍니다.

$recpacha_css="style=\"transform:scale(0.77);-webkit-transform:scale(0.77);-ms-transform:scale(0.77);transform-origin:0 0\"";
아 제가 적용해놓은 사이트에 모바일에서는 음성캡챠만 사용중이거든요.
근데 위 캡챠경우 음성은 영문 음성으로 알려주다보니....
그래서 모바일은 그누보드5에 내장된 음성 캡챠 이용하려고했던거예요!
혹시나 그해서 가능한지 문의 드린거예용!
스킨 차원에서만 수정이 되면 좋은데, 그누 기본 소스를 건드리게 되면 일이 커지기 때문에 고민입니다.
config 설정이 모바일이냐 아니냐를 결정하는 것보다 더 상단에 있기 때문에, 어려울 것이라 생각됩니다.
고려는 해 보겠습니다만, 장담은 드리기 힘들 것 같습니다. ㅠㅠ
그누보드5.0.39 버전에 적용을 했는데 '로봇이 아닙니다' 체크 후 글등록 버튼을 누르면,
'자동등록방지 숫자가 틀렸습니다.'가 뜨면서 글 등록이 안됩니다.
플러그인에서 이항목을 건너뛰게 할 수는 없을까요?
그렇다면, site key 나 secret key 에 문제가 있거나,
서버단에서 캡차값 체크하는 부분에 문제가 있어 보이는데요.

secret key 값을 확인해 보십시오.
site key와 secret key는 비교해 봤지만 이상이 없습니다. 작동까지 잘 됩니다.
그러니까 '로봇이 아닙니다'까지 체크가 되고 그 이후에 경고창이 떠서 우선은 bbs/ 관련 파일들의 alert 항목을 지우고 사용중입니다.
전체를 새로 설치하고 소스를 따로 수정한 것 없이 테스트를 한건데 이렀네요.
바꾼거라고는 그누보드 기본환경설정의 음성캡챠선택 오류로 저장이 안되서 mp3 폴더에 basic 폴더를 하나 만들어줬습니다.
감사합니다.
마스타님 감사합니다.
그런데 mp3풀더에는 아무것도 없다보니 관리자 환경설정에서 자꾸 음성캡챠를 선택하라고 하니 환경설정 적용을 못하네요..ㅠㅠ
뜨는데 살짝 렉?이 있네요 헌데 모바일에서 누르기만 하는 간편함을 제공하니 좋은데 개선되겠죠?!ㅎ

마스타님 플러그인을 빌더에 배포해도 무관한지 고수님께 여쭙습니다 ㅎ
리캡차가 살짝 늦게 뜨는 것은, 구글 서버에서 바로 서비스되기 때문에 그럴 수도 있습니다.

출처만 남겨 주신다면, 마음대로 사용하셔도 됩니다. ^^
출처는 오픈라이센스라 구글리캡챠쪽으로 해야되고
도움주신분으로 마스타님을 걸면 되겠죠?ㅎ 감사합니다 !ㅎ
속도쪽은 제가 소스좀 살펴봐야겟네요~
그누보드 5.1.19 버젼에서

'로봇이 아닙니다' 체크 후 글등록 버튼을 누르면,

한참 몇분지나서

'자동등록방지 숫자가 틀렸습니다.'가 뜨면서 글 등록이 안됩니다.

해결주시면 안되나요??
'자동등록방지 숫자가 틀렸습니다.'가 뜨면서 글 등록이 안됩니다.

이렇게 나옵니다.

http://gaonnuri.co

회원가입으로 한번 테스트 해보세요
구글 리캡차의 작동방법을 보면,
리캡차 값을 체크하면 웹서버에서 구글사이트로 리캡차 값을 보내서 확인하는 과정이 있습니다.

아마도 이부분, 즉 웹서버에서 구글리캡차 사이트의 특정 url 을 호출하는 과정..
에서 막힌 것 같습니다.

서버의 방화벽 등에서 해당 부분을 체크해 보시기 바랍니다.

서버를 직접 관리하는 것이 아니시라면, 서버 관리자에게 문의해 보세요.
한글도메인( 한글.한국, 한글.com, 한글.kr)은 익스플로러 6,7,8,9 에서 사용불가능합니다.
그누보드 기본캡차도 역시 작동불가능합니다.  ㅠㅠ
해결했어요 ... 전 디자인만 하는 사람이라...
recaptcha_api.php 파일에...

$html .= "\n".' <script src="https://www.google.com/recaptcha/api.js?></script>';
이부분을 수정...
$html .= "\n".' <script src="https://www.google.com/recaptcha/api.js?hl=ko"></script>';
요렇게 부분 수정 했더니....한한글로 나오네요... ㅡ,,ㅡ;;;
링크는 http://www.seaferry.co.kr/bbs/register_form.php 입니다.

수정내용은 루트의 컨피그를 리캡차로 변경했구요

나머지 파일은 키를 입력받아 수정후 플러인 폴더에 업로드하였습니다
recaptcha.js 파일 소스에서

$("#captcha_reload").live("click", function(){

$("#captcha_reload").on("click", function(){
로 바꿔 보세요.

jQuery 1.9+ 에서 live 가 없어졌습니다.

플러그인 소스를 업데이트 해야 겠습니다.
감사합니다.
캡챠를 원래대로 바꾸셔서 확인할 수가 없네요.

recaptcha.js 파일이 브라우저 캐싱되어 있을 수 있습니다.
새로고침 해 보시고, 캐싱된 파일을 한번 확인해 보세요.
마스타님 지금 플러그인 정말 잘 쓰고 있습니다.


이번에

https://www.xetown.com/alley/447985

위 링크처럼 리캡챠를 안보이게 만들 수도 있을 것 같습니다.

어떻게 수정하면 될까요?
진짜 너무 감사합니다!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
저는 자동등록방지 숫자가 계속 뜨지 않아서 해결방법을 찾다 이게시물까지 왔는데
너무 좋아요 ㅠㅠ 한방에 해결되었어요
리캡챠!!! 너무 좋네요 ㅠㅠ
너무너무너무 감사합니다!!!!!!!!!
마스타님 이런 좋은 플러그인을 공유해주셔서 감사합니다.

저도 위에 오류처럼 같은 오류를 겪고있어 질문하나 남겨봅니다.

호스팅은 cafe24 가상서버를 쓰고있으며

php버전은 7.0.1 curl 7.29버전 enabled상태이며

리캡차는 잘뜨고 체크도 잘됩니다.

하지만 쪽지보내기,회원가입 버튼을 누르면

"자동등록방지 숫자가 틀렸습니다" 가 뜹니다.

어디쪽의 문제일까요?

일단 임시로

if (!chk_captcha()) {
    alert('자동등록방지 숫자가 틀렸습니다.');
}
경고창만 지우고 쓰고있습니다
혹시 구글 로봇이 아닙니다 이거 안뜨게하는 법은 없나요?ㅠㅠ 자꾸 게시물읽을때마다 일정시간지나면 계속 로봇이 아닙니다 떠서 그림맞추기해야합니다 제발 없애는법좀 알려주세요
그누보드 5.3 에는 구글 갭챠가 기본기능으로 추가가 되었습니다.
따라서, 그누보드 5.3 에서는 위 플러그인이 동작하지 않습니다.
전체 503
그누보드5 플러그인 내용 검색

회원로그인

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