• 목록
  • 아래로
  • 위로
  • 10
  • title: 황금 서버 (30일)humit
  • 조회 수 4498

현재 군인 신분이어서 정기적인 강좌 연재가 되지 않아서 팁 & 강좌게시판에 글을 적으려 했는데 권한이 없다고 나오네요.

 

그래서 자유 게시판에 적게 되었습니다!

 

카카오톡에서 링크를 삽입하시면 아래 사진처럼 미리보기 내용이 나옵니다.

 

 

이번 강좌에서는 이 미리보기가 나오지 않도록 하는 방법에 대해서 알아보려고 합니다.

 

 

1. 미리보기가 나오는 방식

먼저 사용자가 메시지로 특정 URL이 포함된 메시지를 전송합니다. 그러면 메시지에서 URL에 해당하는 내용을 파싱해서 기억해놓습니다.

그리고 해당 내용을 카카오톡 서버에 보내서 캐시된 내용이 있는지를 확인합니다. 캐시된 내용이 있는 경우에는 그 내용을 바로 받아와서 카카오톡으로 뿌려주게 됩니다.

캐시된 내용이 없는 경우에는 scrap-bot이 해당 URL의 내용을 읽어와서 og태그 내용을 파싱해서 서버에 캐시해놓고 해당 내용을 카카오톡으로 뿌려주게 됩니다.

 

즉 scrap-bot을 잘 처리하면 미리보기가 나오지 않게 할 수 있습니다.

 

2. 미리보기가 나오지 않게 하자

보통 봇을 구성할 때는 각자의 규칙에 맞게 USER_AGENT를 설정하고 있습니다.

카카오톡의 scrap-bot의 경우에는 USER_AGENT의 값으로 facebookexternalhit/1.1;kakaotalk-scrap/1.0; +https://devtalk.kakao.com/t/scrap/33984 를 가지고 있습니다.

즉 USER_AGENT 값에 kakaotalk-scrap/1.0가 들어있는지 확인하여 처리를 해주면 미리보기가 나오지 않게 할 수 있다는 소리입니다.

이 아이디어를 바탕으로 소스코드를 작성해보면 아래와 같습니다.

 

<?php
$filter = 'kakaotalk-scrap/1.0';
$ua = $_SERVER['HTTP_USER_AGENT'];
if(strpos($ua, $filter) > 0) {
    header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
    exit;
}
?>

 

소스코드에 대해 설명을 하자면 USER_AGENT에 kakaotalk-scrap/1.0이 있는지를 확인하고, 있는 경우에 404 에러를 보여주는 코드입니다.

그리고 exit를 사용해서 밑에 코드가 더이상 실행이 되지 않도록 합니다.

 

이 코드를 맨 위에 넣어주시면 카카오톡 미리보기가 나오지 않는 것을 확인하실 수 있습니다.

 

아래는 위 코드를 적용한 실행 결과입니다. 보시다시피 미리보기 링크가 나오지 않는 것을 확인하실 수 있습니다.

 

image.png

 

이렇게 해서 카카오톡 미리보기 링크가 나오지 않는 방법에 대해서 알아보았습니다. 다음 강좌에서는 좀 더 신선한 내용으로 찾아뵙도록 하겠습니다. :) (언제가 될지는 모르지만요...)

작성자
title: 황금 서버 (30일)humit 119 Lv. (0%) 1140460/115200000EXP

Study For Us Hosting 1기 모니터링 관리자 (16.12.01 ~ 17.01.08.)

C++, Python, PHP를 주로 사용하며 알고리즘, DL, 해킹 쪽에 관심이 있습니다.

휴학생입니다.

티스토리 블로그 : http://humit.tistory.com/

카카오톡 봇 : http://pf.kakao.com/_Efrbu/chat

지식인 프로필 : https://kin.naver.com/profile/jhjang1005

댓글 10

NoYeah
profile image

헛 팁게시판에 작성이 안된다고요? 확인해볼게요.

그리고 강좌 게시판에 글 작성은 여전히 가능합니다.

강좌 게시판에 올려주셔도 돼요.

comment menu
2017.11.01. 14:07

신고

"NoYeah님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit 작성자 → NoYeah
profile image

팁게시판은 작성이 가능한데 강좌 게시판에 작성이 안됩니다 ㅠㅠ

comment menu
2017.11.01. 14:08

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

NoYeah → humit
profile image

그런가요? 확인해볼게요

그리고 메인 노출은 조만간 변경이 있을 예정입니다.

comment menu
2017.11.01. 16:11

신고

"NoYeah님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit 작성자 → NoYeah
profile image

넵 감사합니다!

comment menu
2017.11.01. 16:33

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit 작성자 → NoYeah
profile image

그리고 팁게시판도 메인에 노출이 될 수 있으면 좋겠습니다 ㅎㅎ...

comment menu
2017.11.01. 14:11

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

마카롱
profile image

없애는 이유는 무엇인가요?

comment menu
2017.11.01. 14:31

신고

"마카롱님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit 작성자 → 마카롱
profile image

거창한 이유가 있는 건 아닙니다 ㅎ. 그냥 메시지 내용에만 집중할 수 있도록 하려고요...

comment menu
2017.11.01. 14:51

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

라엘
profile image
오 유용한 방법이네요!
comment menu
2017.11.02. 16:15

신고

"라엘님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 황금 서버 (30일)humit 작성자 → 라엘
profile image
감사합니다 :)
comment menu
2017.11.02. 20:27

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

변익수
profile image
감사합니다.
comment menu
2018.03.20. 14:33

신고

"변익수님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 마스터 24.02.11.17:21 732
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 4404
177 21. 혈액형입니츄 12 image 국내산라이츄 국내산라이츄 18.12.08.04:58 1290
176 21. [OpenPyXL] 엑셀 문서를 열고 시트에서 셀의 값을 얻기 3 image 이니스프리 이니스프리 20.02.01.23:46 1275
175 2. 마크다운을 응용하여 글을 써보자 image Doge아시다시피 Doge아시.. 17.12.07.21:04 1255
174 정말정말 기본적인 XE 위젯 반응형 적용하기 (라이믹스도 OK!) 7 image 망할윈도우미 망할윈도우미 18.04.29.10:21 1251
173 1.마크다운이란 무엇인가? + OT 7 image Doge아시다시피 Doge아시.. 17.11.26.16:02 1242
172 11. 돌연변이란 무엇인가츄-돌연변이의 종류 6 image 국내산라이츄 국내산라이츄 17.12.17.22:17 1242
171 [보안] SQL Injection에 대한 내용과 방지 방법. humit title: 황금 서버 (30일)humit 16.07.15.10:58 1214
170 [Git] 자주 사용하는 Git 명령어 8 네모 네모 19.04.26.19:05 1213
169 안드로이드 앱을 한번 만들어보자! 10 Dobob title: 도밥위키!Dobob 17.01.18.12:05 1205
168 노트북 뚜껑 닫았을시에도 전원켜있게 하기 image 막시모 막시모 16.08.04.09:12 1202
167 3. 문자열 처리 (1) - 문자열 접근 및 검색방법 4 image 이니스프리 이니스프리 19.12.09.20:00 1184
166 사이트 미러링 스크립트. 7 file NoYeah NoYeah 17.11.06.00:19 1172
165 [생화학] 세포호흡 Part I (에너지 투자기) 2 image sweetenpotato sweetenpotato 20.04.10.01:24 1169
164 특별편-보건용 마스크란 2 image 국내산라이츄 국내산라이츄 20.01.30.00:14 1159
163 간단한거지만 윈도우 공유폴더 만들기 image 막시모 막시모 17.10.05.11:57 1155
162 특별편-우울증이란 무엇일까츄 10 image 국내산라이츄 국내산라이츄 17.12.19.23:01 1154
161 4. 전기영동이었츄 18 image 국내산라이츄 국내산라이츄 17.11.06.12:04 1152
160 Filezilla 사용시 사소하지만 중요할 수도 있는 원칙. 8 image Nodeulnaru Nodeulnaru 16.09.26.02:14 1140
159 윈도우10 듀얼모니터 없이도 듀얼모니터의 느낌을 느끼게 해주는 '확장 데스크톱' 6 JongMinMoon JongMinMoon 16.12.26.23:44 1129
158 IIS에서 MySQL 5.7 설치하기 14 image NoYeah NoYeah 17.11.09.23:14 1127