사이드프로젝트 slecs

IndexNow 키 파일 배포로 검색엔진 빠른 인덱싱 연동

목차

IndexNow 키 파일 하나 추가하는 작업이었는데, 이게 생각보다 SEO 파이프라인 전체를 다시 들여다보는 계기가 됐다.

왜 IndexNow였나

검색엔진이 페이지를 발견하는 전통적인 방법은 크롤러가 주기적으로 돌면서 사이트를 긁어가는 방식이다. 근데 이건 페이지가 실제로 갱신됐을 때 언제 반영될지 알 수 없다는 문제가 있음. sitemap.xml 제출해두고 기다리는 것도 마찬가지고.

IndexNow는 그 반대 방향이다. 내가 직접 "이 URL이 바뀌었어요"를 검색엔진한테 알려주는 프로토콜. Microsoft Bing, Yandex, Naver 등이 채택한 표준이고, Bing을 통해 간접적으로 Google도 일부 커버되는 구조다. 특히 콘텐츠가 자주 업데이트되거나 빠른 인덱싱이 중요한 페이지에서 효과가 체감된다.

이 프로토콜의 인증 방식이 독특한데, API 키를 문자열로 담은 텍스트 파일을 웹 루트에 올려두고, 그 파일명이 곧 키 값이 되는 구조다.

// 파일명이 곧 키
https://profile.example.com/3be4a8be474a3fef87f06b2474fc59e7.txt

// 파일 내용
3be4a8be474a3fef87f06b2474fc59e7

파일명과 파일 내용이 동일한 키 값을 담아야 검색엔진이 "이 사이트 소유자가 직접 올린 파일"로 인정한다. 이걸 확인한 뒤에야 IndexNow API 호출이 유효하게 처리됨.

변경 파일이 딱 하나인 이유

profile/3be4a8be474a3fef87f06b2474fc59e7.txt — 이게 전부다. stat도 미지정일 만큼 내용 자체는 단순했음.

그래서 PR 리뷰할 때 팀원들이 "이거 진짜 파일 하나예요?" 하고 한 번씩 확인하는데, 맞다. 이 작업의 핵심은 파일 자체가 아니라:

  • 이 파일이 배포 파이프라인 통해서 실제 서버에 올라가는가
  • 해당 URL이 외부에서 200으로 접근 가능한가
  • 키 파일이 .gitignore나 빌드 제외 목록에 걸려서 누락되지 않는가

이 세 가지 확인이 실질적인 작업이었다.

확인 항목 내용
배포 경로 profile/ 디렉토리가 정적 파일로 서빙되는지
HTTP 응답 200 OK, Content-Type: text/plain
파일 접근성 인증/리다이렉트 없이 외부 접근 가능한지
파일 내용 파일명과 동일한 키 값 포함 여부

생각보다 이 확인 과정에서 "정적 파일 서빙 범위가 어디까지냐"는 얘기가 나왔다. 루트에 올려야 하는 파일인데 빌드 결과물 폴더 구조가 애매하게 잡혀 있으면 배포돼도 접근이 안 되는 케이스가 종종 있음. 이번엔 profile/ 디렉토리 구조가 명확히 잡혀 있어서 별 이슈 없이 통과됐다.

회고

키 파일 추가 자체는 5분 작업이지만, 이 작업을 계기로 profile 서브도메인의 SEO 설정 전반을 훑게 됐다. robots.txt 설정이 제대로 열려 있는지, sitemap이 서브도메인 기준으로 올바르게 구성돼 있는지 같은 것들.

팀 리딩 관점에서 이런 "작아 보이는" 작업을 어떻게 다루냐가 의외로 중요하다. 커밋 하나짜리 작업이라도 PR 설명에 "왜 이 파일이 필요한지", "어떤 URL에서 접근 가능한지", "어떻게 검증했는지"를 적어두면 나중에 팀원이 같은 작업 할 때 참고가 됨. 특히 SEO 관련 작업은 결과가 바로 안 보이니까 작업 근거를 남겨두는 게 더 중요하고.

IndexNow 연동하고 나면 URL 변경 발생할 때마다 API 호출 로직을 붙이는 게 다음 수순인데, 키 파일 배포가 정상 확인된 것만으로도 일단 이 단계는 완료.

끝.


🛒 이 글과 어울리는 추천 상품

*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.

댓글 0

첫 댓글 달아줘.