robots.txt 특정 URL 차단 방법은 사이트 운영 중 자주 필요한 작업이다.
특히 게시판, 테스트 페이지, 중복 콘텐츠처럼 검색엔진에 노출될 필요가 없는 주소를 관리할 때 많이 사용한다.
실제로 사이트를 운영하다 보면 “전체 사이트는 검색 허용하지만 특정 URL만 구글 색인에서 제외하고 싶다”는 상황이 자주 발생한다.
이 글에서는 robots.txt의 기본 구조부터 Googlebot만 특정 URL 차단하는 방법, /* 와일드카드 의미, 주의해야 할 점까지 실제 예시 기준으로 정리해보겠다.
robots.txt란 무엇인가
robots.txt는 검색엔진 크롤러에게
“어디를 수집해도 되고 어디는 수집하지 말라”는 규칙을 알려주는 파일이다.
보통 사이트 최상위 경로에 위치한다.
예시: https://example.com/robots.txt
기본 형태는 매우 단순하다.
User-agent: *
Allow: /
의미는 다음과 같다.
- User-agent: *
모든 검색봇 대상 - Allow: /
사이트 전체 접근 허용
즉 현재 설정은 모든 검색엔진이 사이트 전체를 크롤링할 수 있는 상태다.
왜 특정 URL만 차단하려는가
검색엔진에 모든 페이지가 노출되는 것이 항상 좋은 것은 아니다.
대표적인 예:
- 관리자 기능 페이지
- 검색 결과 페이지
- 테스트 URL
- 중복 콘텐츠
- 비공개 게시판
- 문의 게시판
특히 게시판 URL이 파라미터 방식으로 구성된 경우 검색엔진이 불필요한 페이지를 과도하게 수집하는 경우가 많다.
어떤 페이지는 검색 유입 가치가 거의 없는데도 색인될 수 있다.
실제로 예전에 운영하던 게시판에서도 검색 결과에 문의글 목록이 노출되면서 SEO 품질이 떨어진 경험이 있었다.
그 이후 robots.txt와 noindex 정책을 같이 관리하게 됐다.
Googlebot만 특정 URL 차단하는 방법
가장 많이 사용하는 방식은 User-agent를 분리하는 것이다.
예시:
User-agent: Googlebot
Disallow: /bbs/list/notice
Disallow: /bbs/view/notice/123
User-agent: *
Allow: /
이 설정의 의미는 다음과 같다.
- Googlebot은 특정 URL 접근 금지
- 그 외 검색엔진은 전체 허용
즉 기존 Allow 설정을 유지하면서 구글만 별도로 제어할 수 있다.
/* 와일드카드는 무엇인가
robots.txt에서 많이 헷갈리는 부분이 바로 /* 패턴이다.
예시:
Disallow: /*notice
여기서 *는 “어떤 문자열이든 허용”이라는 의미다.
즉 아래 URL 모두 차단 가능:
/bbs/list/notice
/test?tb_code=notice
/abc/def?table=notice
게시판 구조가 바뀌더라도 동일 파라미터가 포함되면 계속 차단되므로 유지보수에 유리하다.
robots.txt의 중요한 한계
많이 오해하는 부분이 있다.
robots.txt는:
- 크롤링 차단
- 접근 제한 요청
이지,
- 검색결과 완전 제거
는 아니다.
이미 구글에 색인된 URL은 robots.txt만으로 사라지지 않을 수 있다.
이 경우 추가로 아래 작업이 필요하다.
meta noindex 추가
<meta name="robots" content="noindex">
X-Robots-Tag 헤더 사용
<?php
header("X-Robots-Tag: noindex", true);
?>
Google Search Console 삭제 요청
이미 색인된 URL 제거 시 가장 빠른 방법이다.
실제 운영 시 추천 방식
개인적으로는 아래 조합을 가장 많이 사용한다.
단순 크롤링 제한
robots.txt
검색 결과 완전 제외
noindex + robots.txt
SEO 품질 유지
- 중복 페이지 차단
- 검색 결과 페이지 차단
- 파라미터 URL 최소화
특히 워드프레스나 오래된 PHP 게시판은 파라미터 URL이 많아서 robots.txt 정리가 SEO에 꽤 중요하다.
정리
robots.txt는 검색엔진 관리의 가장 기본적인 파일이다.
특히 아래 상황이라면 꼭 관리하는 것이 좋다.
- 게시판 URL이 많음
- 파라미터 페이지가 많음
- 검색 품질을 높이고 싶음
- 중복 색인을 줄이고 싶음
Googlebot만 특정 URL을 막고 싶다면 아래 구조를 기억하면 된다.
User-agent: Googlebot
Disallow: /차단할주소
User-agent: *
Allow: /
또한 /* 와일드카드를 활용하면 URL 패턴 단위로도 제어 가능하다.