엣지 SEO는 CDN의 엣지 서버에서 웹 응답을 바꾸는 기술 SEO 작업입니다. 원본 서버나 CMS를 직접 수정하지 않고 리디렉션, HTTP 헤더, robots.txt 등을 적용합니다. 검색엔진과 사용자는 CDN에서 수정한 최종 응답을 받습니다.
Search Engine Land에 따르면 이 표현은 2018년 TechSEO Boost 콘퍼런스에서 Dan Taylor가 처음 쓰면서 업계에 퍼진 말입니다.
CDN의 엣지 서버에서 실행하는 기술 SEO 변경
CDN은 여러 지역의 서버에서 사용자의 요청을 처리합니다. 사용자에게 콘텐츠를 전달하는 이 서버들을 엣지 서버라고 부릅니다. 엣지 SEO에서는 여기에 코드를 배포해 응답 헤더나 HTML을 수정합니다.
원본 서버의 응답을 수정하는 경우에는 다음 순서로 처리합니다.
- 사용자나 검색로봇이 URL을 요청합니다.
- CDN의 엣지 서버가 요청을 받습니다.
- 엣지 코드가 원본 서버에서 응답을 가져옵니다.
- 헤더나 HTML의 필요한 부분을 바꿔 사용자와 검색로봇에 보냅니다.
Cloudflare Workers는 Cloudflare의 글로벌 네트워크에서 코드를 실행하는 서버리스 플랫폼입니다. 개발자가 서버를 직접 운영하지 않고도 요청 처리 코드를 배포할 수 있습니다. HTMLRewriter로는 응답 HTML에서 특정 요소를 찾아 속성이나 내용을 바꿀 수 있습니다.
이 방식에서는 원본 코드와 CMS 설정을 그대로 유지한 채 최종 응답만 바꿉니다. 따라서 배포 결과를 확인할 때도 CDN을 거친 실제 응답을 검사해야 합니다.
엣지에서 실행하는 대표 작업
엣지에서는 리디렉션과 응답 헤더, HTML 등 검색에 영향을 주는 응답 요소를 수정할 수 있습니다.
- 리디렉션: .htaccess나 nginx 설정을 수정하지 않고 엣지에서 301과 302 이동 규칙을 적용합니다.
- HTTP 헤더 수정:
X-Robots-Tag같은 응답 헤더를 추가하거나 바꿉니다. - robots.txt 수정: 파일이 없던 경로에 새로 응답을 만들거나 기존 규칙을 바꿉니다.
- hreflang 삽입: 언어별, 지역별로 대응하는 URL을 HTML에 표시합니다.
- 콘텐츠 삽입과 덮어쓰기: 메타 태그, canonical, 구조화 데이터 같은 HTML 일부를 바꿉니다.
- A/B 테스트: 페이지 그룹별로 다른 버전을 노출해 결과를 비교합니다.
같은 리디렉션도 원본 서버나 CDN에서 적용할 수 있습니다. 엣지 SEO는 별도의 검색 규칙이 아니라 변경을 적용하는 위치를 뜻하므로, robots.txt나 hreflang의 작성 요건은 그대로 지켜야 합니다.
크롤러가 읽는 응답과 클로킹의 경계
검색로봇은 브라우저처럼 실제로 전달받은 최종 HTTP 응답을 읽습니다. 엣지에서 수정한 내용도 이 응답에 포함되므로 원본 코드와 별도로 구분해 읽지는 않습니다.
엣지에서 콘텐츠를 바꿀 때는 사용자와 검색로봇이 받는 정보가 일치하는지 확인해야 합니다. Google은 동적 렌더링으로 만든 콘텐츠가 사용자가 보는 콘텐츠와 비슷하다면 클로킹으로 보지 않는다고 설명합니다. 클로킹은 검색 순위를 조작하고 사용자를 속이려는 의도로 콘텐츠를 다르게 제공하는 경우입니다.
엣지에서도 수정한 핵심 정보를 사용자와 검색로봇 모두에게 일관되게 제공해야 합니다. User-Agent에 따라 검색로봇에게만 다른 콘텐츠를 보여 주는 코드는 클로킹 문제가 없는지 검토해야 합니다.
엣지 SEO를 쓰는 상황과 위험
원본 수정에 필요한 개발 인력이 부족하거나 배포 주기가 길 때 엣지 SEO를 검토할 수 있습니다. 대규모 리디렉션과 헤더 변경을 빠르게 적용하거나 A/B 테스트를 임시로 운영할 때도 활용합니다.
원본과 엣지에 규칙이 따로 있으면 한쪽을 수정해도 최종 응답은 예상과 다를 수 있습니다. 예를 들어 CMS에서 canonical을 고쳤는데 엣지 코드가 이전 값으로 덮어쓰면, 검색로봇은 바뀌기 전 URL을 받습니다. 원본의 HTML 구조가 달라져 엣지 코드가 수정할 요소를 찾지 못하는 경우도 있습니다.
변경할 때는 대상 URL과 규칙, 담당자, 배포일을 기록하고 CDN을 거친 실제 응답을 검사합니다. 원본에 같은 수정이 반영된 뒤에는 임시 엣지 규칙을 계속 둘지 정해야 합니다. 개발팀과 배포, 테스트 절차를 공유하면 두 곳의 설정이 충돌했을 때 원인을 추적하기 쉽습니다.
자주 묻는 질문
엣지 SEO는 CMS나 서버 코드를 직접 바꾸는 작업인가요?
아닙니다. 원본 서버와 CMS는 그대로 두고, CDN 엣지 서버를 지나는 최종 응답만 바꿉니다. 원본 코드 수정 권한이 없거나 배포 주기가 긴 환경에서 대안으로 쓰는 이유이기도 합니다.
엣지에서 콘텐츠를 바꾸면 클로킹인가요?
사용자와 검색로봇에게 같은 내용을 주면 클로킹이 아닙니다. User-Agent를 구분해 검색로봇에만 다른 내용을 보여주도록 설계하면 클로킹 경계를 넘을 수 있으므로, 엣지에서 바꾼 내용은 사용자 쪽에도 동일하게 적용해야 합니다.
엣지 SEO를 적용하면 개발팀 승인이 필요 없나요?
원본 코드 수정이 없더라도 엣지 코드는 실제 사이트 응답을 바꾸므로 기존 배포 검토 절차에 포함해야 합니다. 승인 담당자는 조직마다 다르지만, 개발팀과 변경 규칙과 검사 결과를 공유하고 문제가 생겼을 때 되돌릴 방법도 정하는 것이 좋습니다.
함께 알아두면 좋은 용어
- CDN: 콘텐츠를 사용자와 가까운 서버에 배포해 전달 속도를 높이는 네트워크
- JavaScript SEO: JavaScript로 만든 본문과 링크를 검색엔진이 읽을 수 있도록 점검하고 개선하는 작업
- 리디렉션: 한 URL로 들어온 사용자와 검색로봇을 다른 URL로 이동시키는 처리
- robots.txt: 규칙을 따르는 검색로봇에 크롤링 허용 범위를 알리는 공개 파일
- 클로킹: 검색 순위 조작과 사용자 기만 의도로 사용자와 검색엔진에 다른 콘텐츠를 보여주는 스팸 기법
- hreflang: 언어별, 지역별로 대응하는 URL을 검색엔진에 알리는 표시