강좌

|  다양한 분야에 다소 전문적인 도움이 되는 강좌들입니다.

조회 수 944 추천 수 0 댓글 10
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
Extra Form

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

 

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

 

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

 

 

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

 

 

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

 

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

TAG •

Who's humit

profile

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

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

대학생이었으나, 현재 공군 복무 중입니다 :)

http://humit.tistory.com/

http://humit.kr/

https://kin.naver.com/profile/jhjang1005

Atachment
첨부 '1'
  • profile
    맛스타 2017.11.01 14:07

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

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

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

  • profile
    title: 황금 서버 (30일)humit 2017.11.01 14:08

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

  • profile
    맛스타 2017.11.01 16:11

    그런가요? 확인해볼게요

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

  • profile
    title: 황금 서버 (30일)humit 2017.11.01 16:33

    넵 감사합니다!

  • profile
    title: 황금 서버 (30일)humit 2017.11.01 14:11

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

  • profile
    마카롱 2017.11.01 14:31

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

  • profile
    title: 황금 서버 (30일)humit 2017.11.01 14:51

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

  • profile
    라엘 2017.11.02 16:15
    오 유용한 방법이네요!
  • profile
    title: 황금 서버 (30일)humit 2017.11.02 20:27
    감사합니다 :)
  • profile
    변익수 2018.03.20 14:33
    감사합니다.

강좌

다양한 분야에 다소 전문적인 도움이 되는 강좌들입니다.

List of Articles
번호 게시판 제목 글쓴이 날짜 조회 수
공지 앞으로 ssh 사용시 한글 사용이 가능합니다. 7 마스터 2018.10.12 4236
공지 접속 불가 사태 수습은 진행중입니다. 35 마스터 2018.10.05 4445
공지 회원 전용 페이지가 생겼습니다. 10 file 마스터 2018.03.20 5367
206 강좌 [스페인어 강좌] CH1) 스페인어란? 1 file 도토리묵 2018.10.12 158
205 강좌 리뉴얼된 구글 뉴스에서 RSS 피드를 생성하는 방법 3 file 이니스프리 2018.10.07 93
204 라이츄 과학츄 20. 알레르기츄 3 file 허니버터뚠뚜니라이츄 2018.10.03 115
203 강좌 아실분들은 아실 미디어위키 웹호스팅상에서의 시각편집기 설치방법(게시판 이동) 2 file 퓨처마츠 2018.10.03 355
202 강좌 [ASP.NET Core를 이용한 웹사이트 만들기] 1. 시작하기 3 file 0x00000FF 2018.09.07 242
201 강좌 [ASP.NET Core를 이용한 웹사이트 만들기] OT. ASP.NET Core란 무엇인가?, 작업 환경 구성 5 0x00000FF 2018.09.06 91
200 라이츄 과학츄 19. 카리킨에 대해 알아보시츄 9 file 허니버터뚠뚜니라이츄 2018.08.26 194
199 라이츄 과학츄 18. C3, C4, CAM이츄 3 file 허니버터뚠뚜니라이츄 2018.07.22 278
198 라이츄 과학츄 17. 형질전환입니츄-풀때기 3 file 허니버터뚠뚜니라이츄 2018.07.03 221
197 Doge의 잡것 프로그래밍 4. 디스코드 봇을 시작해보자 file Doge아시다시피 2018.05.08 1582
196 강좌 정말정말 기본적인 XE 위젯 반응형 적용하기 (라이믹스도 OK!) 7 file 망할윈도우미 2018.04.29 420
195 라이츄 과학츄 16. 형질전환입니츄-박테리아 3 file 허니버터뚠뚜니라이츄 2018.04.15 508
194 강좌 DNS가 어떻게 작동하는지 알아봅시다: 2. 각 DNS 레코드의 기능 2 abnoeh 2018.03.30 308
193 강좌 DNS가 어떻게 작동하는지 알아봅시다: 1. DNS 질의 절차 따라가 보기 3 abnoeh 2018.03.27 548
192 라이츄 과학츄 15. bp와 Da츄 file 허니버터뚠뚜니라이츄 2018.03.11 603
191 맛스타의 Study For Us 일반 웹 호스팅과 VPS와 서버 구입의 차이점 6 맛스타 2018.03.08 2629
190 ☆운영체제를 만들어보자☆ [☆운영체제를 만들어보자☆][Chapter 01] 3. 다섯 가지 메모리 영역과 간단한 어셈블리 2 Hygon 2018.02.25 339
189 라이츄 과학츄 14. 실험실에서 사용하는 기기에 대해 알아보겠츄 8 file 허니버터뚠뚜니라이츄 2018.02.25 1236
188 Doge의 잡것 프로그래밍 3.디스코드 봇을 만들어보자 (준비 편) 5 file Doge아시다시피 2018.02.23 2231
187 ☆운영체제를 만들어보자☆ [☆운영체제를 만들어보자☆][Chapter 01] 2. 스택이 뭘까? 스택을 만들어보자. [※연습 문제, 요약 추가] 4 Hygon 2018.02.14 313
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11
서버에 요청 중입니다. 잠시만 기다려 주십시오...