You cannot see this page without javascript.

Skip to content

Home

조회 수 1303 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

``  
    
``
2
저작권  
Copyright © NAVER Corp. All Rights Reserved. 
이 문서는 네이버(주)의 지적 재산이므로 어떠한 경우에도 네이버(주)의 공식적인 허가 없이 이 문서의 일부 또 는 전체를 복제, 전송, 배포하거나 변경하여 사용할 수 없습니다. 이 문서는 정보 제공의 목적으로만 제공됩니다. 네이버(주)는 이 문서에 수록된 정보의 완전성과 정확성을 검증 하기 위해 노력하였으나, 발생할 수 있는 내용상의 오류나 누락에 대해서는 책임지지 않습니다. 따라서 이 문서 의 사용이나 사용 결과에 따른 책임은 전적으로 사용자에게 있으며, 네이버(주)는 이에 대해 명시적 혹은 묵시적 으로 어떠한 보증도 하지 않습니다. 관련 URL 정보를 포함하여 이 문서에서 언급한 특정 소프트웨어 상품이나 제품은 해당 소유자가 속한 현지 및 국내외 관련법을 따르며, 해당 법률을 준수하지 않음으로 인해 발생하는 모든 결과에 대한 책임은 전적으로 사 용자 자신에게 있습니다. 
네이버(주)는 이 문서의 내용을 예고 없이 변경할 수 있습니다.  
 
3
문서 정보 
문서 개요 이 문서는 네이버 신디케이션 사용 방법과 사용 시나리오, 시나리오별 구현 방법을 설명한다.
독자 이 문서의 독자는 네이버 신디케이션을 이용하려는 웹 사이트와 앱 개발자이다.
문의처 이 문서의 내용에 오류가 있거나 내용과 관련한 의문 사항이 있으면 네이버 고객센터 (https://help.naver.com/support/service/main.nhn?serviceNo=606)에 문의한다.
문서 버전 및 이력
버전 일자 이력사항
1.0 2014-06-26 1차 배포
1.1 2014-08-20 2차 배포
1.2 2014-12-30 최종 배포 
 
4
표기 규칙
참고 표기
참고 독자가 참고해야 할 내용을 기술한다.
주의 표기
주의 독자가 반드시 알아야 할 사항, 시스템 에러를 유발할 수 있는 사항, 수행하지 않았을 때 재산상의 피해를 줄 수 있는 사항을 기술한다.
소스 코드 표기 이 문서에서 소스 코드는 회색 바탕에 검정색 글씨로 표기한다.
COPYDATASTRUCT st; st.dwData = PURPLE_OUTBOUND_ENDING; st.cbData = sizeof(pp);  st.lpData = &pp;  ::SendMes(GetTargetHwnd(), WM_COPYDATA, (WPARAM)this->m_hWnd, (LPARAM)&st);  
5
목차
개요 _______________________________________________ 9 신디케이션이란 ________________________________________________________________________________ 9 용어 정리 ______________________________________________________________________________________ 9 네이버 신디케이션 사용 시나리오 _____________________________________________________________ 9 시나리오 적용 예시 ____________________________________________________________________________ 10 네이버 신디케이션 사용 준비 사항 ___________________________________________________________ 10
네이버 신디케이션 문서 __________________________________ 12 네이버 신디케이션 문서의 구성 _______________________________________________________________ 12 피드 문서 _________________________________________________________________________________ 12 등록/수정 엔트리 _________________________________________________________________________ 13 삭제 엔트리 _______________________________________________________________________________ 15 네이버 신디케이션 문서 형식 스키마 _________________________________________________________ 15 네이버 신디케이션 문서 제한 사항 ___________________________________________________________ 16 요소 순서 _________________________________________________________________________________ 16 문서 크기와 엔트리 수 ___________________________________________________________________ 16 네이버 신디케이션 문서 예시 _________________________________________________________________ 16 네이버 신디케이션 문서 검증 _________________________________________________________________ 18
네이버 신디케이션 문서의 전송 _____________________________ 19 네이버 신디케이션 문서의 전송 방법 _________________________________________________________ 19 핑 URL ________________________________________________________________________________________ 19 핑 전송 방법 __________________________________________________________________________________ 19 네이버 신디케이션 핑 전송 검증 ______________________________________________________________ 20
시나리오별 구현 가이드 __________________________________ 21 각 변경 사항에 대해 네이버 신디케이션 문서를 실시간으로 생성 ___________________________ 21 네이버 신디케이션 문서를 주기적으로 생성 __________________________________________________ 22 내부 API를 호출하는 주소를 주기적으로 전송 _______________________________________________ 23
6
네이버 신디케이션 활용의 제약사항 __________________________ 24
네이버 신디케이션의 응답 메시지 ____________________________ 25
 
7
표 및 그림 목록 
표 목록 표 1 피드 문서 요소 설명 _______________________________________________________________ 12 표 2 엔트리 요소 설명 __________________________________________________________________ 14 표 3 link의 rel 속성 값과 href 속성 값과 type 속성 값 ________________________________ 15 표 4 link의 rel=’app’의 경우 사용되는 type 속성 값 ____________________________________ 15 표 5 삭제 엔트리 문서 요소 설명 _______________________________________________________ 15 표 6 네이버 신디케이션 서버의 응답 메시지 ___________________________________________ 25  

개요 일반
9
개요
이 장에서는 네이버 신디케이션을 간단하게 소개한다.
신디케이션이란
신디케이션이란 웹 사이트 또는 모바일 어플리케이션(이하 앱 이라고 한다)이 보유하고 있는 콘텐츠를 다른 웹 사이트가 이용할 수 있게 하는 방식의 하나이다. 콘텐츠를 보유하고 있는 웹 사이트와 앱은 정해진 형식에 따라 문서를 구성하여 해당 문서의 링크를 다른 웹 사이트에 전송하고, 이를 전송 받은 웹 사이트는 해당 문서의 내용을 분석하여 사용한다.
네이버와 같은 검색 서비스는 웹 로봇을 이용하여 웹 사이트의 콘텐츠를 수집하는데 일반적인 무작위 크롤링 기법은 웹 사이트에 부하를 줄 가능성이 있고 문서 내용을 정확하게 분석하기 어렵다. 신디케이션을 이용하면 크롤링 기법에 비해 부하를 최소화 하고, 원하는 부분만 검색 서비스에 노출할 수 있는 장점이 있다. 그리고 수집으로 정보를 획득하기 어려운 앱 내의 정보도 연동이 가능하다. 또한 신규 콘텐츠나 수정된 콘텐츠가 검색 서비스에 쉽게 반영되며, 제목, 내용, 태그 등 콘텐츠의 구조가 검색 결과에 정확히 반영된다는 장점이 있다.
용어 정리
이 문서에서 사용하는 용어는 다음과 같다.
• 콘텐츠(contents): 네이버 신디케이션으로 전달하려는 정보 전체. 하나 이상의 네이버 신디케이션 문서로 표현한다. • 네이버 신디케이션 문서: 네이버에게 웹 사이트의 콘텐츠를 전달할 수 있게 정해진 형식에 맞춰 작성한 문서 • 엔트리(entry): 웹 사이트의 한 페이지를 네이버 신디케이션 문서 형식에 맞춰 표현한 것
네이버 신디케이션 사용 시나리오
웹 사이트가 네이버 신디케이션을 사용하는 일반적인 시나리오는 다음과 같다.
각 변경 사항에 대해 네이버 신디케이션 문서를 실시간으로 생성
콘텐츠가 생성되거나 수정, 삭제될 때마다 실시간으로 한 건씩 엔트리가 하나인 네이버 신디케이션 문서로 작성하고 문서의 위치를 네이버 신디케이션 서버에 전송한다.
일정 시간 동안의 변경 사항에 대해 네이버 신디케이션 문서를 주기적으로 생성
일정 시간 동안 생성되거나 수정, 삭제된 콘텐츠를 내부 저장소(DB)에 저장하고, 이를 모두 포함하는 네이버 신디케이션 문서를 주기적으로 생성하여 문서의 위치를 네이버 신디케이션 서버에 전송한다. 단,
네이버 신디케이션 사용 시나리오 대외비
10
이때 네이버 신디케이션 문서 하나에 포함되는 문서 엔트리 개수에는 제한이 있다. 이에 대한 자세한 설명은 "문서 크기와 엔트리 수"를 참고한다.
네이버 신디케이션 문서를 생성하는 내부 API를 호출하는 주소를 주기적으로 전송
생성되거나 수정, 삭제된 콘텐츠를 내부 저장소(DB)에 저장하고, 이를 입력받아 네이버 신디케이션 문서로 반환하는 내부 API를 작성한다. 이 API를 호출하는 주소를 주기적으로 네이버 신디케이션 서버에 전송한다. 단, API에 의해 생성되는 네이버 신디케이션 문서 하나에 포함되는 문서 엔트리 개수에는 제한이 있다. 이에 대한 자세한 설명은 "문서 크기와 엔트리 수"를 참고한다.
시나리오 적용 예시
앞에서 설명한 시나리오를 적용한 예는 다음과 같다.
웹 사이트 N (등록/수정 문서와 삭제 문서를 나눠서 전송하는 예)
• 콘텐츠 등록 및 수정: 실시간으로 등록/수정 엔트리가 하나인 네이버 신디케이션 문서를 생성하여 네이버 신디케이션 서버에 파일 위치 전송 • 콘텐츠 삭제: DB에 삭제된 콘텐츠를 저장한 후, 주기적으로 삭제 엔트리가 여러 개인 네이버 신디케이션 문서를 생성하여 네이버 신디케이션 서버에 파일 위치 전송
게시판 B (등록/수정 문서와 삭제 문서를 하나의 문서로 전송하는 예)
• 콘텐츠가 등록되거나 수정, 삭제될 때 DB에 해당 콘텐츠를 저장한 후, 등록/수정 엔트리와 삭제 엔트리가 여러 개인 네이버 신디케이션 문서를 동적으로 생성하는 API의 호출 주소를 주기적으로 네이버 신디케이션 서버에 전송
네이버 신디케이션 사용 준비 사항
네이버 신디케이션을 사용하기 위해 필요한 것은 다음과 같다.
• 네이버 계정 • 네이버 웹 마스터 툴을 통한 사이트 소유 인증
네이버 웹 마스터 툴(http://webmastertool.naver.com)에서 콘텐츠를 보유하고 있는 웹 사이트의 소 유자임을 인증받아야 한다. 해당 웹 사이트에 위치한 콘텐츠에 대해서만 네이버 신디케이션을 사용 할 수 있으며, 네이버 신디케이션 문서 또는 네이버 신디케이션 API 호출 주소도 해당 웹 사이트에 위치해야 한다.
• 연동키(Token)
네이버 웹 마스터 툴 인증 후 신디케이션 사용동의를 거치면 연동키가 발급된다. 연동키는 Bearer 타입이며 연동키의 예는 다음과 같다.
KKAARBaYmh9eI7zFDT2asRRSwb8M3jgEpyR1R+CM2kPkFKGtEnbYzbsHdQFPMD3ZAnqOlpl0pK48++tHkONOoc KO+2nHTwuDTLjSFMQWWdjghm1c (이후 연동키가 포함된 코드 예시에서는 KKAARBaYmh9…(중략)…Wdjghm1c으로 표기한다.)
개요 일반
11
• 로봇 배제 표준에 대한 이해 사용자가 수집요청을 하더라도 robots.txt의 설정에 따라 네이버 검색 서비스가 수집요청 문서에 접근하지 못할 수 있다. 웹 사이트의 문서에 네이버 검색로봇(서비스)의 접근이 가능하게 하려면, robots.txt를 아래 (예)처럼 설정하거나 아예 robots.txt 파일이 존재하지 않아야 한다.  (예) www.example.com인 경우, http://www.example.com/robots.txt에 아래 내용 추가 
User-agent: Yeti Allow: / 
주의 robots.txt 설정에 의해 네이버 검색로봇의 접근이 차단된 경우에는, 네이버 검색 서비스의 수집과 검색 결과 노 출이 제한될 수 있다.
네이버 신디케이션 사용 시나리오 대외비
12
네이버 신디케이션 문서
네이버 신디케이션 문서는 RFC 4287 - The Atom Syndication Format과 RFC 6721 - The Atom "deletedentry" Element를 참고하여 네이버 검색 서비스에 연동할 수 있게 보완한 XML 문서 형식을 사용한다.
이 장에서는 네이버 신디케이션 문서의 구성과 제한 사항을 설명한다.
주의 XML 파서로 파싱이 불가능한 문자(컨트롤 문자)가 문서에 포함되어 있거나 네이버 신디케이션 문서 형식을 준 수하지 않으면, 네이버 검색 서비스에 반영되지 않을 수 있다.
네이버 신디케이션 문서의 구성
네이버 신디케이션 문서는 UTF-8로 인코딩된 피드 문서로 구성되며, 피드 문서는 등록/수정 엔트리나 삭제 엔트리, 또는 둘 모두를 포함한다.
각 문서의 문법은 다음과 같은 기호를 사용하여 표현하고 있다.
• 물음표(?): 해당 요소를 0회 또는 1회 포함한다. • 더하기 기호(+): 해당 요소를 1회 이상 포함한다. • 별표(*): 해당 요소를 0회 이상 포함한다.
피드 문서
네이버 신디케이션 문서에는 entry 요소(element) 또는 deleted-entry 요소를 하나 이상 포함하는 feed 요소가 반드시 있어야 한다. feed 요소는 다음 7가지 요소를 포함한다.
Feed Document = <feed> {     <id>     <title>     <author>     <updated>     <link> ?     <entry> *     <deleted-entry> * }
표 1 피드 문서 요소 설명
요소 필수 여부 설명
feed - entry 요소를 담는 컨테이너 요소
id 필수 피드 문서를 구분하는 피드의 URL. 특정 ID 로 구분하기 어렵다면, 네이버 신디케이션 문서를 얻을 수 있는 URL의 사용을 권장한다.
title 필수 피드 문서를 나타내는 제목
네이버 신디케이션 문서 일반
13
요소 필수 여부 설명
author 필수 피드 문서 작성자. 콘텐츠를 소유하는 웹 사이트 이름 등을 사용할 수 있 다. name(필수), url(선택), email(선택)과 같은 하위 요소를 사용하여 표현한 다.
updated 필수 피드 문서가 수정된 시간. Timestamp 형식을 사용한다(예: 2014-0101T18:30:02+01:00, 2014-01-01T18:30:02z).
link 선택 콘텐츠를 소유하는 웹 사이트 정보를 표현할 수 있다. 다음과 같은 속성이 있다.  rel(필수): rel='site' 속성만 유효하며, 이는 콘텐츠를 소유하는 웹 사이트 에 대한 정보라는 것을 의미한다. 이에 대한 자세한 설명은 "표 3 link 의 rel 속성 값과 href 속성 값"을 참고한다.  href(필수): 콘텐츠를 소유하는 웹 사이트 주소를 제공한다.  title(선택): 콘텐츠를 소유하는 웹 사이트 이름을 제공한다.
entry 선택(주 1) 등록되거나 수정된 콘텐츠를 표현하는 요소(신디케이션으로 제공하려는 웹 사이트의 콘텐츠 단위). 이에 대한 자세한 설명은 아래의 "등록/수정 엔트 리"를 참고한다.
deleted-entry 선택(주 1) 삭제된 콘텐츠를 표현하는 요소(신디케이션으로 제공하려는 웹 사이트의 콘텐츠 단위). 이에 대한 자세한 설명은 아래의 "삭제 엔트리 문서"를 참고 한다.
• (주1) entry 또는 deleted-entry 둘 중 하나 이상의 요소를 반드시 포함해야 한다. entry, deletedentry가 모두 없으면 네이버 검색 서비스는 아무 작업도 수행하지 않는다.
주의 feed의 필수요소(id, title, author, … )는 반드시 순서대로 나열하여야 한다.. 
등록/수정 엔트리
등록/수정 엔트리는 웹 사이트의 콘텐츠 등록 또는 수정에 대한 정보를 포함하며, 다음과 같은 요소로 구성된다.
Entry Document = <entry> {     <id>     <title>     <author>      <updated>     <published>      <link> +     <content>     <summary> ? <category> ? }
네이버 신디케이션 사용 시나리오 대외비
14
표 2 엔트리 요소 설명
요소 필수 여부 설명
entry - 웹 사이트의 한 페이지를 구분하는 단위.
id 필수 엔트리를 구분하는 유일한 ID. 엔트리의 URL 값을 사용한다.
title 필수 엔트리를 나타내는 제목
author 필수 엔트리 작성자. name(필수), url(선택), email(선택)과 같은 하위 요소를 사용 하여 표현한다.
updated 필수 최근 수정한 시간. Timestamp 형식을 사용한다(예: 2014-0101T18:30:02+01:00, 2014-01-01T18:30:02z)..
published 필수 최초 발행 시간. Timestamp 형식을 사용한다(예: 2014-0101T18:30:02+01:00, 2014-01-01T18:30:02z). 최초 발행 시간을 알기 어렵다면 최근 수정한 시간을 사용할 수 있다.
link 필수(주 2) 다음과 같은 속성이 있다.  rel(필수): rel='via' 속성(필수)과 rel='mobile' 속성(선택)과 rel=’app’만 유효하며, rel 속성을 사용하여 여러 종류의 관계를 표현할 수 있다(이 에 대한 자세한 설명은 "표 3 link의 rel 속성 값과 href 속성 값"을 참 고한다).  href(필수): 관련된 콘텐츠의 주소를 제공한다.  title(선택): 관련된 콘텐츠의 이름을 제공한다.  type(선택): rel=’app’인 경우, app을 구분할 수 있는 값을 제공한다. (표 4 link의 rel=’app’의 경우 사용되는 type 속성 값을 참고한다)
content 필수 HTML 형식의 엔트리 본문. 본문 안에 link 정보도 포함하는 것을 권장한 다. 다음과 같은 속성이 있다.  type(필수): type='html'만 지원.
summary 선택 텍스트 형식의 엔트리 본문이나 요약 정보. 다음과 같은 속성이 있다.  type(필수): type='text'만 지원.
category 선택 엔트리의 분류 정보를 표현하는 요소. 다음과 같은 속성이 있다.  term(필수): 분류 식별자  label(선택): 분류 이름
주의 entry의 필수요소(id, title, author, … )는 반드시 순서대로 나열하여야 한다. 그리고 entry의 id가 redirect url인 경우에는, 검색에 정상 반영되지 않을 수 있다. 
네이버 신디케이션 문서 일반
15
• (주2) atom:link 요소의 rel 속성 값과 그에 따라 제공해야 하는 href 속성 값은 다음과 같다.
표 3 link의 rel 속성 값과 href 속성 값과 type 속성 값
rel 속성 값 필수 여부 사용 범위 href 속성 값
site 선택 피드 문서 엔트리를 소유하는 웹 사이트 링크
via 필수 엔트리 엔트리가 속한 상위 채널의 링크(예: 게시판 목록, 블로그 홈 등)
mobile 선택 엔트리 엔트리를 표현하는 모바일용 링크
app 선택 엔트리 엔트리를 표현하는 app용 링크. 3개의 type을 가진다.
표 4 link의 rel=’app’의 경우 사용되는 type 속성 값
type 속성 값 설명 예
playstore:(+app ID) 구글 플레이 마켓의 app playstore:com.syndi-example.android
itunes:(+app ID) 아이튠즈 마켓의 app itunes:id123456789
nstore:(+app ID) N스토어 마켓의 app nstore:7654321 
삭제 엔트리
삭제 엔트리는 웹 사이트에서 삭제된 콘텐츠에 대한 정보만을 포함하며, 다음과 같은 요소로 구성된다.
deletedEntry Document = <deleted-entry> *
표 5 삭제 엔트리 문서 요소 설명
요소 필수 여부 설명
deleted-entry - 웹 사이트의 삭제된 한 페이지를 구분하는 단위. 다음과 같은 속성이 있 다.  ref(필수): 삭제된 엔트리의 URL 값을 사용한다.  when(필수): 엔트리 삭제 시간. Timestamp 형식을 사용한다.
네이버 신디케이션 문서 형식 스키마
네이버 신디케이션 문서 형식 스키마는 아래 주소에서 다운로드 받을 수 있다. 아래 스키마를 사용하여 XML(네이버 신디케이션 문서)의 무결성을 검증할 수 있으며, 검증을 통과한 경우에만 네이버 검색 시스템에 사용된다. 
• 스키마 위치 - http://webmastertool.naver.com/syndi/syndi.xsd
네이버 신디케이션 사용 시나리오 대외비
16
네이버 신디케이션 문서 제한 사항
요소 순서
네이버 신디케이션 문서에서 필수 요소들는 아래와 같은 순서를 지켜야 한다.
피드 문서에서 필수 요소들의 순서
<feed>     <id/>     <title/>     <author/>     <updated/>     … </feed>
등록/수정 엔트리에서 필수 요소들의 순서
<entry>     <id/>     <title/>     <author/>     <updated/>     <published/>     <link/> <content/>     … </entry>
문서 크기와 엔트리 수
네이버 신디케이션 문서의 최대 크기는 50MB이며, 최대 100개의 등록/수정 엔트리를 포함할 수 있다.(문서의 최대 크기와 문서가 포함하는 최대 엔트리 개수는 네이버 웹 서비스의 사정에 따라 변동될 수 있다.) 등록/수정 엔트리와 삭제 엔트리는 모두 한 문서에 포함하거나, 서로 다른 두 문서로 분리할 수 있다.
네이버 신디케이션 문서 예시
여기에서는 네이버가 권장하는 네이버 신디케이션 문서와 최소한의 요소만 포함하는 네이버 신디케이션 문서의 예를 보여준다.  웹 사이트에서 샘플 문서를 다운로드 받을 수 있다[링크].
네이버가 권장하는 신디케이션 문서 예
<?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://webmastertool.naver.com"> <id>   http://www.syndi-example.com/bbs/  </id>  <title>Naver Syndication Sample Document</title>  <author>   <name>webmaster</name>   <email>webmaster@donotsend.email</email>  </author>  <updated>2014-06-26T20:10:49+09:00</updated>  <link rel="site"   href="http://www.syndi-example.com"   title="Naver Syndication Sample Document" />
네이버 신디케이션 문서 일반
17
 <entry>   <id>    http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=63643   </id>   <title><![CDATA[검색 잘되는 웹문서 만들기란?]]></title>   <author>    <name>user_name</name>   </author>   <updated>2014-06-26T20:10:48+09:00</updated>   <published>2014-06-26T20:10:48+09:00</published>   <link rel="via" href="http://www.syndiexample.com/bbs/board.php?bo_table=search_info" title="검색정보 게시판" />   <link rel="mobile" href="http://m.syndi-example.com/bbs/search_info/63643" />   <link rel="app" type="playstore:com.syndi-example.android" href="myscheme://bbs/search_info/63643" title="my googleplay app" />   <link rel="app" type="itunes:1234567" href="my-scheme://bbs/search_info/63643" title="my itunes app" />   <link rel="app" type="nstore:7654321" href="my-scheme://bbs/search_info/63643" title="my nstore app" />   <content type="html"><![CDATA[<div class="webguide_area"><h4>검색 잘되는 웹문서 만들기란?</h4><p>검색등록 서비스를 통해 검색반영 신청하신 사이트 내의 모든 URL(페이지)는 기본적으로 검색로봇이 방문할 대상으로 인식하여, 네이버 검색로봇이 주기적으로 방문 후 <br>검색에 함께 자동 반영하고 있습니다.<br>네이버 검색팀에서는 당신이 소중히 관리하는 사이트 및 내부의 좋은 문서들이 네이버 검색 및 여타 검색로봇에 잘 반영되도록 기술적으로 지원하고자 합니다. <br>이를 위해 네이버 및 다른 모든 <strong>검색로봇에 잘 수집-노출되는 웹문서를 만들기 위한 방법</strong>을 가이드페이지로 제작하여 1차 공개합니다. <br>추후 사이트 운영자분들에게 도움이 될 다양한 기능 및 정보를 추가로 제공할 예정이니 많은 관심 부탁드리며,<br>특히 <em>본인이 사이트 운영자이지만 개발자가 아닌 경우, 개발자(웹마스터)에게 꼭 이 페이지를 알려</em>주시고 검색에 잘 나올 수 있도록 고쳐달라고 부탁하시기 바랍니다.<br><br>(원본 출처 : <a href="https://submit.naver.com/web.nhn" target="_blank">클릭</a>)</p></div>]]></content>   <summary type="text"><![CDATA[검색 잘되는 웹문서 만들기란? 검색등록 서비스를 통해 검색반영 신청하신 사이트 내의 모든 URL(페이지)는 기본적으로 검색로봇이 방문할 대상으로 인식하여, 네이버 검색로봇이 주기적으로 방문 후 검색에 함께 자동 반영하고 있습니다. 네이버 검색팀에서는 당신이 소중히 관리하는 사이트 및 내부의 좋은 문서들이 네이버 검색 및 여타 검색로봇에 잘 반영되도록 기술적으로 지원하고자 합니다. 이를 위해 네이버 및 다른 모든 검색로봇에 잘 수집-노출되는 웹문서를 만들기 위한 방법을 가이드페이지로 제작하여 1차 공개합니다. 추후 사이트 운영자분들에게 도움이 될 다양한 기능 및 정보를 추가로 제공할 예정이니 많은 관심 부탁드리며, 특히 본인이 사이트 운영자이지만 개발자가 아닌 경우, 개발자(웹마스터)에게 꼭 이 페이지를 알려주시고 검색에 잘 나올 수 있도록 고쳐달라고 부탁하시기 바랍니다. (원본 출처 : 클릭)]]></summary>   <category term="search_info" label="검색정보" />  </entry>  <deleted-entry ref="http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=42" when="2014-0626T00:10:05+09:00" />  <deleted-entry ref="http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=43" when="2014-0627T07:11:41+09:00" />  <deleted-entry ref="http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=44" when="2014-0628T14:12:22+09:00" /> </feed>
최소한의 요소만 포함하는 신디케이션 문서 예
<?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://webmastertool.naver.com">     <id>                 http://www.syndi-example.com/bbs/         </id>         <title>Naver Syndication Sample Document</title>         <author>                 <name>webmaster</name>                 <email>webmaster@donotsend.email</email>         </author>         <updated>2014-06-26T20:10:49+09:00</updated>         <entry>                 <id>                         http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=63643                 </id>
네이버 신디케이션 사용 시나리오 대외비
18
                <title><![CDATA[검색 잘되는 웹문서 만들기란?]]></title>                 <author>                         <name>user_name</name>                 </author>                 <updated>2014-06-26T20:10:48+09:00</updated>                 <published>2014-06-26T20:10:48+09:00</published>                 <link rel="via"                         href="http://www.syndiexample.com/bbs/board.php?bo_table=search_info"                         title="검색정보 게시판" />                 <content type="html"><![CDATA[<div class="webguide_area"><h4>검색 잘되는 웹문서 만들기란?</h4><p>검색등록 서비스를 통해 검색반영 신청하신 사이트 내의 모든 URL(페이지)는 기본적으로 검색로봇이 방문할 대상으로 인식하여, 네이버 검색로봇이 주기적으로 방문 후 <br>검색에 함께 자동 반영하고 있습니다.<br>네이버 검색팀에서는 당신이 소중히 관리하는 사이트 및 내부의 좋은 문서들이 네이버 검색 및 여타 검색로봇에 잘 반영되도록 기술적으로 지원하고자 합니다. <br>이를 위해 네이버 및 다른 모든 <strong>검색로봇에 잘 수집- 노출되는 웹문서를 만들기 위한 방법</strong>을 가이드페이지로 제작하여 1차 공개합니다. <br>추후 사이트 운영자분들에게 도움이 될 다양한 기능 및 정보를 추가로 제공할 예정이니 많은 관심 부탁드리며,<br>특히 <em>본인이 사이트 운영자이지만 개발자가 아닌 경우, 개발자(웹마스터)에게 꼭 이 페이지를 알려</em>주시고 검색에 잘 나올 수 있도록 고쳐달라고 부탁하시기 바랍니다.<br><br>(원본 출처 : <a href="https://submit.naver.com/web.nhn" target="_blank">클릭</a>)</p></div>]]></content>         </entry>         <deleted-entry ref="http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=42" when="2014-0626T00:10:05+09:00" />         <deleted-entry ref="http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=43" when="2014-0627T07:11:41+09:00" /> <deleted-entry ref="http://www.syndiexample.com/bbs/board.php?bo_table=search_info&amp;id=44" when="2014-0628T14:12:22+09:00" /> </feed>
네이버 신디케이션 문서 검증
네이버 신디케이션 문서의 스키마 검증
네이버 웹마스터도구의 네이버 신디케이션 메뉴에서 사용자 신디케이션 문서에 대한 스키마 검증이 가능하다.
스키마 검증 결과가 “정상”으로 나오지않은 경우에는, 검증 결과의 오류 메시지에 따라 사용자의 네이버 신디케이션 문서를 수정해야한다.
스키마 검증을 통과하지못한 신디케이션 문서는 네이버 검색 결과에 노출되지 않는다.
네이버 신디케이션 문서의 전송 일반
19
네이버 신디케이션 문서의 전송
네이버 신디케이션 문서의 전송 방법
네이버 신디케이션을 사용하는 웹 사이트는 네이버 신디케이션 서버에 핑(ping)을 전송하여 콘텐츠가 변경(등록/수정/삭제)되었음을 알린다. 이때 변경된 콘텐츠를 담고 있는 네이버 신디케이션 문서의 주소를 핑 URL이라 정의한다. 핑을 전송하는 횟수에는 제한이 있으며, 1일 최대 전송 횟수는 네이버 웹 마스터 툴의 가이드를 따른다.
핑 URL을 수신하는 네이버 신디케이션 서버의 주소는 https://apis.naver.com/crawl/nsyndi/v2이다.
핑 URL
핑 URL은 네이버 신디케이션을 사용하는 웹 사이트에 있어야 한다. 예를 들어, 자신이 소유하고 있는 웹 사이트 http://www.example.com의 콘텐츠를 네이버 신디케이션으로 전송한다면, 핑 URL로 http://www.example.com/syndi/doc.xml과 같은 주소를 사용할 수 있다.
핑 URL은 URL 인코딩을 하여 전송해야 한다.
참고 URL 인코딩에 대한 자세한 내용은 퍼센트 인코딩을 참고한다. 
핑 전송 방법
보안을 위해서 네이버 웹 마스터 툴에서 발급받은 연동키를 요청 헤더의 Authorization 영역에 토큰 타입(Bearer)과 함께 전송해야 한다. 다음은 요청 헤더의 예이다.
User-Agent: request Host: apis.naver.com Pragma: no-cache Content-type: application/x-www-form-urlencoded Accept: */* Authorization: Bearer KKAARBaYmh9…(중략)…Wdjghm1c 다음은 PHP Client URL Library를 이용하여 네이버 신디케이션 서버로 핑 URL을 전송하는 코드의 예이다.
<?php $ping_auth_header = "Authorization: Bearer KKAARBaYmh9…(중략)…Wdjghm1c"; $ping_url = "http%3A%2F%2Fwww.example.com %2Fsyndi%2Fdoc.xml"; $ping_client_opt = array(     CURLOPT_URL => "https://apis.naver.com/crawl/nsyndi/v2",     CURLOPT_POST => true,     CURLOPT_POSTFIELDS => "ping_url=" . $ping_url,     CURLOPT_RETURNTRANSFER => true,
네이버 신디케이션 사용 시나리오 대외비
20
    CURLOPT_CONNECTTIMEOUT => 10,     CURLOPT_TIMEOUT => 10,     CURLOPT_HTTPHEADER => array("Host: apis.naver.com", "Pragma: no-cache", "Accept: */*", $ping_auth_header) ); 
$ping = curl_init(); curl_setopt_array($ping, $ping_client_opt); curl_exec($ping); curl_close($ping); ?> 핑 전송에 성공한 경우, 아래와 같은 응답 메시지를 받는다.
<?xml version="1.0" encoding="UTF-8"?> <result> <message><![CDATA[OK]]></message> <error_code><![CDATA[000]]></error_code> </result>
네이버 신디케이션 핑 전송 검증
네이버 신디케이션의 핑 수집요청 이용
네이버 웹마스터도구에서 핑(신디케이션) 수집요청을 하여, 그 결과를 확인할 수 있다.
핑 수집요청 1건당, 1일 핑 전송가능 횟수가 1건씩 차감되며, 핑 수집요청의 처리 결과가 “정상”이 아닌 경우에는 사용자의 핑 전송 방식을 점검 해야한다.
시나리오별 구현 가이드 일반
21
시나리오별 구현 가이드
이 장에서는 다양한 시나리오에 따른 네이버 신디케이션 문서 전송 방법을 설명한다.
네이버 신디케이션 문서의 생성 시점 및 방법의 차이에 따른 세가지 경우를 가정한다.
각 변경 사항에 대해 네이버 신디케이션 문서를 실시간으로 생성
콘텐츠가 생성되거나 수정, 삭제될 때마다 실시간으로 한 건씩 엔트리가 하나인 네이버 신디케이션 문서로 작성하고, 문서의 위치를 네이버 신디케이션 서버로 전송한다. 네이버 수집 시스템은 해당 위치에 접근하여 네이버 신디케이션 문서를 가져간다.
네이버 신디케이션 대상이 XE board의 콘텐츠일 때, 애드온으로 이를 구현한 예는 다음과 같다.
<?php /*  * add-on 설명, 버전, 작성자 등 정보 기입  */ if(!defined('__XE__')) exit(); 
if( $called_position != "after_module_proc" ) {     return; } $pingAct = Context::get('act'); switch( $pingAct ) {     case 'procBoardInsertDocument':         /*          * 문서가 새로 생성되거나 수정되었을 때 호출되는 프로세스          *          * TODO : 네이버 신디케이션 문서를 생성하는 함수나 코드가 필요하다.          * 생성된 네이버 신디케이션 문서의 위치를 네이버 신디케이션 서버로 전송한다.          * "핑 전송 방법" 참고          */         break;     case 'procBoardDeleteDocument':         /*          * 문서가 삭제되었을 때 호출되는 프로세스          *          * TODO : 네이버 신디케이션 문서를 생성하는 함수나 코드가 필요하다.          * 생성된 네이버 신디케이션 문서의 위치를 네이버 신디케이션 서버로 전송한다.          * "핑 전송 방법" 참고          */         break;     default:         return; } ?> 네이버 신디케이션 대상이 Wordpress의 콘텐츠일 때, 플러그인으로 이를 구현한 예는 다음과 같다.
<?php /*  * 플러그인 설명, 버전, 작성자 등 정보 기입  */ 
add_action( 'publish_post', 'sendUpdatedXmlFileLink' ); add_action( 'trashed_post', 'sendDeletedXmlFileLink' ); 
function sendUpdatedXmlFileLink() {     /*      * 'publish_post' 액션이 발생하면 호출하도록 생성한 함수
네이버 신디케이션 사용 시나리오 대외비
22
     *      * TODO : 네이버 신디케이션 문서를 생성하는 함수나 코드가 필요하다.      * 생성된 네이버 신디케이션 문서의 위치를 네이버 신디케이션 서버로 전송한다.      * "핑 전송 방법" 참고      */     } } 
function sendDeletedXmlFileLink() {     /*      * 'trashed_post' 액션이 발생하면 호출하도록 생성한 함수      *      * TODO : 네이버 신디케이션 문서를 생성하는 함수나 코드가 필요하다.      * 생성된 네이버 신디케이션 문서의 위치를 네이버 신디케이션 서버로 전송한다.      * "핑 전송 방법" 참고      */     } } ?>
네이버 신디케이션 문서를 주기적으로 생성
일정 시간 동안 생성되거나 수정, 삭제된 콘텐츠를 내부 저장소(DB)에 저장하고, 이를 모두 포함하는 네이버 신디케이션 문서를 주기적으로 생성하여 문서의 위치를 네이버 신디케이션 서버에 전송한다. 단, 이때 네이버 신디케이션 문서 하나에 포함되는 엔트리 개수에는 제한이 있다(이에 대한 자세한 설명은 "문서 크기와 엔트리 수"를 참고한다). 네이버 수집 시스템은 해당 위치에 접근하여 네이버 신디케이션 문서를 가져간다.
다음은 특정 시간 동안 DB에 저장된 콘텐츠를 가공하여 네이버 신디케이션 문서를 생성하는 코드의 예이다.
<?php function getDocuments($start_time, $end_time) {     /*      * TODO : DB에서 저장된 콘텐츠의 일부를 가져오는 함수 작성      */     return $db_data; } 
function makeNaverSyndicationDocuments($db_data) {     /*      * TODO : DB에서 가져온 콘텐츠를 가공하여 네이버 신디케이션 문서를 생성하는 함수 작성      */     return $ping_xml_file; } 
function sendDocumentLocation($ping_xml_file) {     /*      * TODO : 생성한 문서의 위치를 네이버 신디케이션 서버로 전송하는 함수      * "핑 전송 방법" 참고      */ } // 20분 동안 변경된 콘텐츠를 가공하여 네이버 신디케이션 문서를 생성한다. $db_data = getDocuments("yyyy-mm-dd 00:00:00", "yyyy-mm-dd 00:20:00"); $ping_xml_file = makeNaverSyndicatonDocuments($db_data); sendDocumentLocation($ping_xml_file); ?>
시나리오별 구현 가이드 일반
23
내부 API 를 호출하는 주소를 주기적으로 전송
생성되거나 수정, 삭제된 콘텐츠를 내부 저장소(DB)에 저장하고, 이를 입력받아 네이버 신디케이션 문서로 반환하는 내부 API를 작성한다. 이 API를 호출하는 주소를 주기적으로 네이버 신디케이션 서버에 전송한다. 단, API에 의해 생성되는 네이버 신디케이션 문서 하나에 포함되는 엔트리 개수에는 제한이 있다(이에 대한 자세한 설명은 "문서 크기와 엔트리 수"를 참고한다). 네이버 수집 시스템은 해당 주소에 접근하여 API가 반환하는 네이버 신디케이션 문서를 가져간다.
다음은 시간을 지정하는 파라미터를 GET 방식으로 전달받아, 해당 시간 동안 DB에 저장된 콘텐츠를 가공하여 네이버 신디케이션 문서를 반환하는 API와, 그 API의 호출 주소를 네이버 신디케이션 서버에 전송하는 코드의 예이다. 여기에서 API 호출 주소는 http://www.example.com/syndi/userAPI.php라고 가정한다.
<?php /*  * 파일 1. 사용자 API, userAPI.php  * 동적으로 DB안의 콘텐츠를 네이버 신디케이션 형식으로 전환하여 출력한다.  * start_time과 end_time을 GET 파라미터로 받는다고 가정한다.  */ $start_time = isset($_GET[‘s’]) ? $_GET[‘s’] : null; $end_time = isset($_GET[‘e’]) ? $_GET[‘e’] : null; 
if( empty($start_time) || empty($end_time) ) return; 
function getDocuments($start_date, $end_date) { /*  *  TODO : DB에서 저장된 콘텐츠의 일부를 가져오는 함수 작성  */     return $db_data; } function makeNaverSyndicationDocuments($db_data) { /*  *  TODO : DB에서 가져온 콘텐츠를 네이버 신디케이션 문서 형식으로 가공하여, 문자열로 리턴하는 함수 작성  */     return $naver_syndication_document; } 
$db_data = getDocuments($start_time, $end_timpe); $naver_syndication_data = makeNaverSyndicatonDocuments($db_data); echo $naver_syndication_document; ?> 
<?php /*  * 파일 2. 핑 전송, sendPing.php  * 사용자 API의 호출 주소를 네이버 신디케이션 서버로 전송하는 역할을 한다.  */ function sendUserAPIAddress() {     $ping_url="http%3A%2F%2Fwww.example.com%2Fsyndi%2FuserAPI.php%3Fs%3Dyyyy-mmdd+00%3A00%3A00%26e%3Dyyyy-mm-dd+00%3A20%3A00"; /*  * TODO : 사용자 API의 호출 주소를 네이버 신디케이션 서버로 전송하는 함수 작성  * "핑 전송 방법" 참고  */ } 
sendUserAPIAddress(); ?>
네이버 신디케이션 사용 시나리오 대외비
24
네이버 신디케이션 활용의 제약사항
네이버 신디케이션은 다음과 같은 제한 사항이 있다.
등록/수정 엔트리만 포함하는 네이버 신디케이션 문서
문서당 최대 100개의 등록/수정 엔트리를 포함할 수 있다. 만약 1일 최대 핑 전송 횟수가 5,000회라면, 1일 최대 500,000개(100개x5,000)의 등록/수정 엔트리를 네이버 신디케이션 서버에 전달할 수 있다.
삭제 엔트리만 포함하는 네이버 신디케이션 문서
문서 크기가 최대 크기(50MB)를 넘지 않는다면 삭제 엔트리 개수에 대한 제한은 없다.
등록/수정 엔트리와 삭제 엔트리를 모두 포함하는 통합 문서
등록/수정 엔트리는 100개 이내여야 하고, 문서 크기가 최대 크기(50MB)를 넘지 않아야 한다. 
네이버 신디케이션의 응답 메시지 일반
25
네이버 신디케이션의 응답 메시지
이 장에선 사용자가 네이버 신디케이션으로 핑을 전송하였을 때, 네이버 신디케이션 서버의 응답 메시지들이다. 
표 6 네이버 신디케이션 서버의 응답 메시지
응답 코드 응답 메시지 설명 000 Success 전송이 성공하였습니다. 024 Authentication failed 인증 실패하였습니다. 028 Authentication header not exists OAuth Header 가 없습니다. 029 oAuth Authentication failed 요청한 Authorization값을 확인할 수 없습니다. 030 Https protocol is required https 프로토콜로 요청해주세요. 051 Api not exists 존재하지 않는 API 입니다. 061 Malformed url 잘못된 형식의 호출 URL입니다. 063 Malformed encoding 잘못된 형식의 인코딩 문자입니다. 071 Unsupported return format 지원하지 않는 리턴 포맷입니다. 120 No contents 전송된 내용이 없습니다. (ping_url 필요) 121 Invalid parameter 유효하지 않은 parameter가 전달되었습니다. 122 Invalid site 등록되지 않은 사이트 입니다. 123 Exceed ping limit 1일 전송 횟수를 초과하였습니다. 130 Internal server error. Try again. 서버 내부의 오류입니다. 재시도 해주세요. 
응답 메시지의 <receipt_number>
네이버 수집 시스템 내에서 전송된 ping을 구분하는 유일한 값이다.
예를 들어, 사용자가 http://www.example.com /syndi/doc.xml 을 네이버 신디케이션 서버로 여러번 전송하더라도, <receipt_number>의 값은 매번 달라진다.
네이버 신디케이션 응답 메시지의 예
1. 핑 전송이 성공하였을 때
<?xml version="1.0" encoding="UTF-8"?> <result> <message><![CDATA[OK]]></message> <error_code><![CDATA[000]]></error_code> <receipt_number>c323cc3e2ab83ee92d14a3296c3bb11k</receipt_number> </result> 2. 유효하지 않은 연동키로 핑을 전송하였을 때
<?xml version="1.0" encoding="UTF-8"?> <result> <message><![CDATA[Authentication failed (인증 실패하였습니다.)]]></message> <error_code><![CDATA[024]]></error_code> <receipt_number /> </result> 



(안심) 짧은 주소는 : http://bit.ly/1EChGs3 입니다
?
  • ?
    답변좀부탁드립니다제발 2015.12.08 13:40
    Https protocol is required 에러가 뜰땐 어떻게 해야 하나요?

List of Articles
번호 제목 날짜 조회 수
27 카운터스킨에 총게시물수랑 댓글수 알아내기 /widgets/counter_status/counter_status.class.php // 가입한 회원수 출력 $oMemberModel = &amp;getModel(&#39;member&#39;); $args-&gt;date = date(&quot;Ymd000000&quot;,... 2017.03.07 142
26 글쓰기&읽기 권한 없을때 로그인창으로 강제 이동법 modules/board/board_view.php 파일에서 function alertMessage($message) //이 함수를 변경하면 된다. function alertMessage($message) { if($message==&quot;msg_no... 2015.12.18 552
25 글쓰기 할때 자동으로 테그값을 글제목의 단어를 공간체크 하여 태그 입력되게 function triggerArrangeTag(&amp;$obj) // &lt;-- 요부분 밑에 { // if(!$obj-&gt;tags) return new Object(); 이부분을 주석처리 if(!$obj-&gt;tags &amp;&amp; $obj-&gt;t... 2015.12.18 501
24 게시물에 링크(Link) 있을때 새창으로 보여 주기 jQuery(function(){ jQuery('.xe_content[class^=document_] a').attr('target', '_blank'); }); jQuery(function(){ jQuery('.xe_content[class^=comment_] a').... 2015.04.16 378
23 NaverWorks 도메인 메일 사용시 XE에서 인증메일 보내는 방법 classes/mail/Mail.class.php 화일에서 fonction mail(){ $this-&gt;useNaverAccount(&quot;아이디@등록한도메인&quot;, &quot;*비밀번호); // 이 한줄만 추가하면 됩니다.Myceo... ... 2015.04.09 710
22 setitle2.addon.php에서 category 명 같이 나오게... title바꾸기 /addons/setitle2/setitle2.addon.php 화일을 수정한다 $pointconfig = $module-&gt;getModuleConfig('point'); //각종 정보 담아오기 //아래는 수정 추가 한것이다.... 2015.04.07 832
21 atom10.html 변경하여 게시판이름-게시물-기본타이틀명 나오게 {'&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;'} &lt;feed xmlns=&quot;http://webmastertool.naver.com&quot;&gt; &lt;id&gt;{$info-&gt;link}&lt;/id&gt; &lt;title&gt;{$info-&gt;title}&lt;/title&gt; &lt;author&gt;... 2015.04.03 503
» 네이버 신디케이션 사용자 가이드 NAVER Syndication User Guide `` `` 2 저작권 Copyright © NAVER Corp. All Rights Reserved. 이 문서는 네이버(주)의 지적 재산이므로 어떠한 경우에도 네이버(주)의 공식적인 허가 없이 이 ... 1 2015.04.01 1303
19 신디케이션 ver 4.0을 사용시에 타이틀이 제대로 나오지 않을경우 modules/syndication/syndication.model.php 여기 화일중에.. case 'site' : $site_info = new stdClass; $site_info-&gt;id = $this-&gt;getID('site'); $site_info-&gt;s... 1 2015.03.28 407
18 [XE]Layouts 모듈이 Layout 을 파싱하는 시점에 전달해 주는 변수 및 데이터 덤프 Array ( [buff] =&gt; file://./files/cache/template_compiled/99b4a68c4de6bdf7b15cc072553a8c7c.compiled.php [__Context] =&gt; stdClass Object ( [lang] =&gt; stdC... 2015.02.14 31028
17 카카오 API 로그인 연동하여 토큰 받아오기 https://www.xpressengine.com/index.php?mid=download&amp;package_id=22753522 LginXE Server ver 1.02를 이용하여 하였다 해당 화일은 loginxeserver.view.php... 2015.02.14 1544
16 logged_info 정보 $logged_info-&gt;member_srl : 회원의 고유 번호. 중복 X $logged_info-&gt;user_id : 아이디 $logged_info-&gt;email_address : 메일 주소 $logged_info-&gt;passwrod : 비... 2015.02.12 267
15 XE에서 태그값이 없으면 제목의 공간을 이용해 자동 태그값 넣기 /modules/tag/tag.controller.php 중에서 function triggerArrangeTag(&amp;$obj) { // if(!$obj-&gt;tags) return new Object(); 2015-02-10(화)_myceo 이부분을 ... 2015.02.11 296
14 XE $module_info 변수 추출 결과 레이아웃에서 아래와 같이 해서 뽑아온 변수 정보 {print_r($module_info)} 대충 각 모듈별로 레이아웃을 구성할 때는 아래의 module 정보를 빼내오는 것이 가장 ... 2015.01.28 550
13 "이 페이지 나가기" 경고창이 뜨는 사이트의 경우 common / js / jquery.min.js 파일을 열어서 global:!0 을 찾은 후(두 군데) global:!1 로 바꿔줍니다. 보통의 경우엔 바꿔주지 않아도 뜨지 않는 경고창이지만 ... 2015.01.15 4211
12 인증메일이 발송 되지 않을때 /classes/mail/Mail.class.php 에서 약 140번째 라인에 보면 function Mail() { } 여기 부분을 function Mail() { $this-&gt;useGmailAccount(&quot;구글아이디@gmail.com... 2015.01.13 408
11 다양한 카운터 위젯 그림및 소스 참조 &lt;?php /* Copyright (C) NAVER &lt;http://www.navercorp.com&gt; */ /** * @class counter_status * @author NAVER (developers@xpressengine.com) * @version 0.1 * @... file 2015.01.07 209
10 각종 API 적용(밴드,카카오톡,카카오스토리,마이피플) &lt;?php if(!defined(&quot;__ZBXE__&quot;)) exit(); if(Context::getResponseMethod() == &quot;XMLRPC&quot; || Context::get('module') == &quot;admin&quot;) return; if($called_position !=... 2 2014.11.26 1527
9 특정 이메일 가입 않되게 (인증메일 관련) 인증메일 때문에... 특정 사이트로는 인증메일이 않들어가지는 부분을 해결하고자 다음과 같이 수정 하였다 /modules/member/member.controller.php 이 화일을 열... 2014.08.06 4407
8 XE보드 회원가입시 가입 아이피 기록하기 modules/member/member.controller.php 열기 // Insert data into the DB 찾기 // Insert data into the DB $args-&gt;list_order = -1 * $args-&gt;member_srl; $args-... 2014.07.23 2197
Board Pagination Prev 1 2 Next
/ 2

전체 방문자 : 608,028 오늘 : 1 어제 : 1 문서 : 1,406 댓글 : 26
전체회원 : 982 엮인글 : 0 첨부파일 : 1,294 전체 페이지뷰 : 4,615,490 오늘 페이지뷰 : 56 어제 페이지뷰 : 405
Copyright by Myceo 2008 All rights reserved
수원시 팔달구 인계동 1017-3 2층
☏1600-0324

Made By Myceo

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소