◇GeoAnalytics
제품개념인덱스가격블로그FAQ

GeoAnalytics 설치는 테스트 방문과 서버 기록 대조로 끝냅니다

가이드발행됨2026. 10. 25.조회 3
GeoAnalytics 설치는 테스트 방문과 서버 기록 대조로 끝냅니다

측정 서비스 설치는 다섯 단계로 진행합니다. 서버 환경 점검, 가입과 사이트 등록, 서버 연동, 테스트 방문 만들기, 서버 기록과의 대조 순서입니다. 서비스 안내 페이지는 연동 후 5분 안에 봇 방문 기록이 대시보드에 표시된다고 설명합니다.

신호는 AI·검색엔진 봇이 실제로 방문해야 생깁니다. 그래서 테스트 방문을 직접 만듭니다. 대시보드 표시를 서버 접속 기록과 대조하면 설치를 마친 것으로 봅니다.

설치 전에 무엇을 확인하나요?

연동 방식은 사이트가 돌아가는 환경에 따라 다릅니다. 서비스 안내 페이지와 자주 묻는 질문에 나온 방식은 다음과 같습니다.

사이트 환경연동 방식맡을 사람연결 확인
Node.js 서버(Express 등)서버 모듈(미들웨어) 한 줄 추가개발 담당자배포 뒤 대시보드에 방문 표시
워드프레스플러그인 연동사이트 관리자연결 뒤 대시보드에 방문 표시
PHP 등 그 밖의 환경요청마다 수집 주소로 HTTP POST 전송개발 담당자전송 뒤 대시보드에 방문 표시

연동 방식을 정한 뒤에는 방문이 서버까지 오지 못하게 막는 요소가 있는지 봅니다. 확인할 요소는 세 가지입니다.

  1. CDN(콘텐츠 전송 네트워크) 캐시 경로: 개념 설명 페이지는 CDN 캐시가 대신 응답한 요청은 측정되지 않는다고 설명합니다. 원서버에 닿지 않았기 때문입니다. 캐시가 적용되는 경로 목록을 받습니다.
  2. 방화벽 위치와 봇 규칙: Perplexity 문서는 웹 방화벽(WAF) 허용 규칙을 만들 때 사용자 에이전트와 공개 IP 범위를 함께 조건으로 쓰라고 안내합니다. 방화벽이 CDN·엣지에 있는지, 원서버에 있는지도 확인합니다. 엣지에서 막힌 요청은 원서버 접속 기록에 남지 않습니다. 원서버에서 막힌 요청은 403 같은 거부 응답으로 기록됩니다.
  3. robots.txt의 봇 차단 여부: OpenAI 문서에 따르면 OAI-SearchBot을 차단한 사이트는 ChatGPT 검색 답변에 표시되지 않습니다. 다만 탐색용 링크로는 나타날 수 있습니다. 같은 문서는 GPTBot 차단이 생성형 AI 기반 모델 학습에 콘텐츠를 쓰지 말라는 뜻이라고 밝힙니다. Perplexity 문서는 검색 결과에 나오려면 PerplexityBot을 robots.txt에서 허용하라고 안내합니다. robots.txt를 따르는 이 봇들은 Disallow로 막혀 있으면 수집·검색 방문을 하지 않습니다.

사용자가 시작한 방문은 사정이 다릅니다. OpenAI 문서는 ChatGPT-User 방문에 robots.txt 규칙이 적용되지 않을 수 있다고 설명합니다. Perplexity 문서도 Perplexity-User는 일반적으로 robots.txt 규칙을 따르지 않는다고 밝힙니다. 봇별 허용·차단 정책은 측정 전에 확정합니다. 그러면 이후 신호를 해석하기 쉽습니다. 차단을 유지할 봇은 신호를 기대하지 않는 대상으로 기록합니다.

끝난 기준: 연동 방식 하나를 정했습니다. 캐시 적용 경로, 방화벽 위치와 봇 규칙 목록을 받았습니다. robots.txt에서 GPTBot·OAI-SearchBot·PerplexityBot의 허용·차단 상태를 기록했습니다.

가입과 사이트 등록은 어디까지 하면 끝난 것인가요?

안내 페이지에 따르면 이메일로 가입하고 측정할 도메인을 입력하면 API 키가 자동으로 발급됩니다. API 키는 사이트를 식별하는 비밀 값입니다.

안내 페이지의 Node.js 예시 코드는 키를 코드에 직접 적지 않고 서버 환경변수에서 읽습니다. 키를 소스 코드에 넣으면 저장소를 볼 수 있는 모든 사람에게 노출됩니다. 직접 연동할 때도 같은 방식을 따릅니다.

도메인은 실제 방문자가 접속하는 주소와 같게 입력합니다. 예를 들어 가상의 ○○ 기업이 www가 붙은 주소로 운영한다면 등록 주소에도 www를 붙입니다.

끝난 기준: 키가 발급되었고 운영 서버의 환경변수에 등록되었습니다. 키를 보관한 위치를 담당자 문서에 적었습니다.

서버에는 어떤 방식으로 연결하나요?

Node.js 서버

안내 페이지 예시는 Node.js용 측정 패키지를 설치해 불러온 뒤 미들웨어로 등록합니다. 패키지 이름은 안내 페이지 예시 코드에 적힌 그대로 씁니다. 등록 코드는 다음 한 줄입니다.

app.use(geoanalytics({ apiKey: process.env.GEOANALYTICS_KEY }))

이 줄을 어디에 넣는지에 따라 결과가 달라집니다. Express 문서는 미들웨어가 요청-응답 과정에서 차례로 호출된다고 설명합니다. 앞선 처리기가 응답을 끝내면 뒤의 경로 처리기가 호출되지 않는 예시도 보여 줍니다.

Express의 serve-static 문서는 기본 설정에서 요청한 파일이 없을 때만 다음 미들웨어로 넘긴다고 설명합니다. 따라서 파일이 있으면 정적 파일 처리에서 응답이 끝난다고 보고 위치를 정합니다. 측정 미들웨어는 정적 파일 처리와 각 라우트(경로별 처리기)보다 위에 둡니다.

끝난 기준: 측정 미들웨어가 정적 파일 처리와 라우트보다 앞에 있습니다. 운영 서버에 배포했고 배포 시각을 기록했습니다.

워드프레스

안내 페이지는 워드프레스 사이트를 플러그인으로 연동한다고 설명합니다.

끝난 기준: 플러그인 연동 뒤 주요 페이지가 정상으로 열립니다. 연동 시각을 기록했습니다.

그 밖의 환경

자주 묻는 질문은 고객 서버가 수집 주소로 POST 요청을 보내는 구조라고 설명합니다. PHP 등 다른 언어에는 HTTP POST 호출 가이드를 제공한다고 밝힙니다.

개념 설명 페이지는 서버 모듈이 요청 정보를 비동기로 보내므로 응답 지연이 없다고 설명합니다. 직접 구현할 때도 전송 결과를 기다리지 않도록 만듭니다. 그러면 페이지 응답과 측정 전송이 서로 영향을 주지 않습니다.

끝난 기준: 요청마다 POST 전송이 실행되고 주요 페이지가 정상으로 열립니다.

개발 담당자에게는 다음과 같이 요청합니다.

  • 측정 모듈을 운영 서버에 연동해 주십시오. 키는 안내 페이지 예시 코드와 같은 이름의 환경변수로 등록했습니다.
  • 정적 파일 처리와 라우트보다 앞에 배치해 주십시오.
  • 배포 시각을 알려 주십시오. 그 이후의 접속 기록과 대시보드를 대조하겠습니다.
  • 배포 후 페이지 응답 속도와 오류 기록이 달라졌는지 함께 확인해 주십시오.

공통 끝난 기준: 배포 뒤 서버 오류 기록에 새 오류가 없습니다.

첫 신호는 어떻게 만들고 확인하나요?

연동 직후에는 봇이 우연히 방문하기를 기다리지 않습니다. 방문을 직접 일으키면 더 빨리 확인할 수 있습니다. 테스트 방법은 세 가지입니다.

  1. ChatGPT 테스트: OpenAI 문서는 ChatGPT-User가 자동 크롤링에 쓰이지 않는다고 설명합니다. 사용자의 요청에 따라 움직인다는 뜻입니다. 측정할 페이지 주소를 넣고 요약을 요청하는 방법을 권합니다.
  2. Perplexity 테스트: Perplexity 문서는 Perplexity-User가 정확한 답을 위해 웹페이지를 방문할 수 있다고 설명합니다. ChatGPT 테스트와 다른 페이지 주소로 같은 요청을 보냅니다. 그러면 두 서비스의 방문을 기록에서 구분하기 쉽습니다.
  3. Search Console 재크롤링 요청: URL 검사 도구로 색인을 요청하려면 Search Console 속성의 소유자 또는 전체 사용자 권한이 있어야 합니다. Google 문서는 크롤링에 며칠에서 몇 주가 걸릴 수 있다고 설명합니다. 같은 URL을 반복해서 요청해도 빨라지지 않는다고 밝힙니다. 그래서 이 방법은 첫날 확인이 아니라 그 이후 확인에 씁니다.

요약을 요청해도 방문이 생기지 않는 경우가 있습니다. 이때는 최근에 고친 다른 페이지로 다시 시도하는 방법을 권합니다.

테스트 요청을 보내고 5분 뒤 대시보드를 엽니다. 안내 페이지가 연동 후 5분 안에 봇 방문이 대시보드에 표시된다고 설명하기 때문입니다. 안내 페이지의 대시보드 항목 가운데 다음 세 가지를 확인합니다.

  • 마지막 봇 방문 시각
  • 엔진별 분포
  • AI가 본 페이지 상위 5개

개념 설명 페이지는 신호를 실시간 참조, 수집 크롤, 검색 색인 세 유형으로 나눕니다. 실시간 참조는 사용자 질문에 답하려고 그때그때 페이지를 가져가는 접근입니다. 같은 페이지는 이를 답변에 쓰일 가능성의 선행 신호로 설명합니다. 다만 수집·참조되었다고 AI 답변에 노출된다는 보장은 아니라고도 밝힙니다. 첫 신호는 측정이 작동한다는 확인으로 읽습니다.

대시보드 표시를 서버 기록과 어떻게 대조하나요?

개념 설명 페이지는 봇이 일반 브라우저로 위장하면 분류가 어렵고 모두 잡아내지는 못한다고 밝힙니다. 그래서 서버 접속 기록에서 같은 시각, 같은 URL의 요청을 찾습니다. 찾은 요청은 IP로 검증합니다.

  • Google: 공식 문서는 먼저 접속 IP를 역방향 DNS로 조회하라고 안내합니다. 조회 결과가 googlebot.com, google.com, googleusercontent.com 중 하나인지 봅니다. 그 도메인을 정방향으로 다시 조회해 원래 IP가 나오면 검증이 끝납니다. Google이 공개한 크롤러 IP 범위 JSON 파일(common-crawlers.json 등)과 대조하는 방법도 안내합니다.
  • OpenAI: 봇별 IP 범위를 searchbot.json, gptbot.json, chatgpt-user.json 파일로 공개합니다.
  • Perplexity: PerplexityBot과 Perplexity-User의 IP 범위를 각각 JSON 파일로 공개합니다. 항상 최신 파일을 쓰라고 안내합니다.

결과는 다음과 같은 기록표에 남깁니다. 아래 세 행은 작성 방법을 보여 주는 가상의 예입니다.

요청 시각테스트 방법대상 URL대시보드 표시서버 기록·IP 검증판정
10:02ChatGPT 요약 요청제품 소개 페이지10:03 방문 표시공개 IP 범위 안정상
10:15Perplexity 요약 요청고객 사례 페이지표시 없음403 응답 기록원서버 방화벽 점검
10:30Perplexity 요약 요청회사 소개 페이지표시 없음기록 없음, CDN 화면에 차단 기록엣지 방화벽 점검

신호가 보이지 않으면 어디부터 점검하나요?

테스트 요청 5분 뒤 다시 열어도 표시가 없으면 아래 표를 위에서부터 확인합니다. 요청이 어디서 끊겼는지에 따라 원인이 나뉩니다.

증상의심할 원인확인 방법
서버 기록에도, CDN·WAF 차단 기록에도 봇 요청이 없음방문이 아직 일어나지 않음다른 페이지로 사용자 요청형 테스트 다시 실행
서버 기록은 없고 CDN·WAF 화면에 차단 기록이 있음엣지 방화벽이 봇을 차단사용자 에이전트와 공개 IP 범위로 허용 규칙 점검
서버 기록에 403 등 거부 응답이 남음원서버 방화벽·보안 모듈이 봇을 차단원서버의 차단 규칙과 허용 목록 점검
서버 기록에 정상 응답이 있으나 대시보드에 없음미들웨어 위치 오류, 운영 환경의 키 누락연동 위치와 운영 서버 환경변수 확인
일부 페이지만 계속 잡히지 않음CDN 캐시에서 응답해당 경로의 캐시 정책 확인
robots.txt에서 OAI-SearchBot을 허용한 직후 그 봇의 방문이 없음변경 반영 대기OpenAI 문서 기준 약 24시간 뒤 다시 확인

Perplexity 문서도 robots.txt 변경이 반영되기까지 최대 24시간이 걸릴 수 있다고 설명합니다. 점검 결과는 앞 기록표의 판정 칸에 적습니다. 원인과 조치한 날짜를 함께 적어야 다음 점검 때 비교할 수 있습니다.

정리

  1. 개발 담당자에게 사이트 환경, CDN 캐시 경로, 방화벽 위치와 봇 규칙, robots.txt 차단 상태를 받아 연동 방식을 정합니다.
  2. 가입하고 도메인을 등록해 키를 받은 뒤, 운영 서버 환경변수에 등록합니다.
  3. 측정 모듈을 정적 파일 처리와 라우트보다 앞에 연동하고 배포 시각을 기록합니다.
  4. ChatGPT와 Perplexity에 서로 다른 페이지의 요약을 요청하고, 5분 뒤 대시보드에서 마지막 봇 방문 시각을 확인합니다.
  5. 같은 시각의 서버 기록을 공개 IP 범위와 대조해 기록표에 판정을 남깁니다.

참고 자료

추천 콘텐츠

📊

GeoAnalytics 시작하기

AI·검색엔진이 내 사이트를 수집·참조하는 신호를 측정해 보세요. Free 플랜 무료.

무료로 시작하기