Cloudflare, AI crawler에 canonical tag를 301 redirect로 강제

AI crawler 통제 논쟁이 robots.txt와 meta tag에서 HTTP status code로 이동했다. Cloudflare는 Redirects for AI Training을 paid Cloudflare plans에 제공하며, verified AI training crawler가 deprecated page를 요청하면 page 안의 canonical tag를 읽어 current URL로 301 redirect한다.

핵심은 soft signal을 enforcement로 바꾼다는 점이다. Cloudflare는 developers.cloudflare.com에서 AI Crawl Control을 운영하며 지난 30일 동안 AI Crawler category bot 방문 4.8M회를 관측했고, deprecated content가 current content와 같은 비율로 소비됐다고 밝혔다. banner, noindex, canonical tag가 모두 있어도 training crawler는 낡은 문서를 계속 가져갔다는 설명이다.

새 기능은 Cloudflare의 cf.verified_bot_category와 HTML의 non-self-referencing canonical tag를 함께 쓴다. request가 GPTBot, ClaudeBot, Bytespider 같은 verified AI Crawler category에서 오면 Cloudflare가 response HTML을 읽고, canonical URL이 자기 자신이 아니면 원문을 반환하기 전에 301 Moved Permanently를 보낸다. human traffic, search indexing, AI Assistant category traffic은 영향을 받지 않는다고 Cloudflare는 적었다.

이 차이는 agent 시대에 실용적인 의미가 있다. Cloudflare는 March 2026에 legacy Workers docs가 OpenAI에 약 46,000회, Anthropic에 3,600회, Meta에 1,700회 crawl됐다고 밝혔다. 그 결과인지, April 2026에 한 AI assistant가 Wrangler KV command를 물었을 때 deprecated colon syntax를 답했다는 사례도 제시했다.

Cloudflare가 먼저 자기 docs에 이 기능을 켠 뒤 측정한 결과도 숫자로 공개됐다. 첫 7일 동안 non-self-referencing canonical tag가 있는 page에 들어온 AI training crawler requests의 100%가 redirect됐고, deprecated content는 제공되지 않았다. 이미 web page의 65-69%가 canonical tag를 갖고 있다는 HTTP Archive 수치도 근거로 들었다.

한계도 분명하다. 이미 학습된 데이터는 고치지 못하고, verified category 밖의 crawler에는 적용되지 않는다. cross-origin canonical과 self-referencing canonical은 redirect 대상에서 제외된다. 그래도 publisher와 developer docs 운영자에게는 중요한 precedent다. AI crawler에게 '이 page는 낡았다'고 말하는 데서 끝나지 않고, 실제로 current page를 받게 만드는 쪽으로 web infrastructure가 움직이기 시작했기 때문이다.