robots.txt 생성기
검색엔진 크롤러 제어용 robots.txt를 만듭니다.
생성한 내용을 사이트 루트의 robots.txt 파일로 저장하세요.
관리자 페이지나 테스트용 폴더가 검색결과에 뜨는 걸 뒤늦게 발견하고 나서야 robots.txt를 찾게 되는 경우가 많습니다. 형식은 단순하지만 한 글자만 틀려도 사이트 전체가 검색에서 사라질 수 있는 파일이라 손으로 쓰기는 부담스럽습니다.
이 도구는 기본 정책을 고르고 차단할 경로와 사이트맵 주소를 적으면 그대로 저장해 쓸 수 있는 robots.txt 내용을 만들어 줍니다.
어떻게 계산되나요
선택에 따라 만들어지는 내용
출력은 항상 User-agent: * 로 시작합니다. 모든 크롤러에 같은 규칙을 적용한다는 뜻입니다.
| 기본 정책 | 출력되는 줄 | 의미 |
|---|---|---|
| 모든 크롤러 허용 | Disallow: | 값이 비어 있어 차단하는 경로가 없음 |
| 모든 크롤러 차단 | Disallow: / | 사이트 전체를 읽지 말라는 요청 |
| 사용자 지정 | 입력한 경로마다 Disallow: 경로 | 적어 넣은 곳만 차단 |
사이트맵 URL을 넣으면 맨 아래에 Sitemap: 줄이 한 칸 띄고 추가됩니다.
차단할 경로 쓰는 법
한 줄에 하나씩, 슬래시로 시작해 적습니다. /admin/ 처럼 끝에 슬래시를 붙이면 그 폴더 아래 전체를, /admin 이라고만 쓰면 admin으로 시작하는 주소 전부를 가리킵니다. 파일 하나만 막고 싶다면 /temp/test.html 처럼 전체 경로를 적으면 됩니다.
크롤링 차단과 검색 노출 차단은 다릅니다
robots.txt는 "읽지 말아 달라"는 요청이지 "검색결과에 넣지 말라"는 지시가 아닙니다. 다른 사이트에 링크가 걸려 있으면 내용 없이 주소만 검색결과에 남을 수 있습니다. 결과에서 완전히 빼려면 크롤링은 열어 두고 해당 페이지에 noindex 메타 태그를 넣어야 합니다. robots.txt로 막아 버리면 크롤러가 그 noindex 표시를 읽지 못해 오히려 주소가 계속 남습니다.
또 robots.txt는 누구나 열어 볼 수 있는 공개 파일입니다. 숨기고 싶은 폴더 이름을 적는 행위 자체가 힌트가 되므로, 정말 보호가 필요한 곳은 로그인이나 접근 권한으로 막아야 합니다.
용어 정리
- User-agent
- 규칙을 적용할 크롤러 이름. 별표(*)는 모든 크롤러를 뜻합니다.
- Disallow
- 해당 경로를 크롤링하지 말라는 요청. 값이 비어 있으면 차단하지 않는다는 의미입니다.
- Sitemap
- 사이트의 주소 목록 파일이 어디 있는지 알려 주는 줄. 크롤러가 페이지를 빠짐없이 찾는 데 도움이 됩니다.
- 크롤링
- 검색엔진 로봇이 페이지를 찾아 읽어 가는 과정입니다.
- 색인(인덱싱)
- 읽어 간 페이지를 검색엔진 데이터베이스에 등록해 검색결과에 나올 수 있게 하는 단계입니다.
자주 묻는 질문
robots.txt는 어디에 올려야 하나요?
사이트 최상위(루트)에 robots.txt라는 이름 그대로 올려야 합니다. 브라우저에서 도메인 뒤에 /robots.txt를 붙여 열었을 때 내용이 보이면 정상이며, 하위 폴더에 두면 크롤러가 읽지 않습니다.
차단했는데도 검색결과에 계속 나옵니다
robots.txt는 크롤링을 막을 뿐 검색결과 등록을 막지는 않습니다. 다른 사이트에 링크가 걸려 있으면 설명 없이 주소만 남을 수 있습니다. 결과에서 빼려면 크롤링은 허용한 상태로 해당 페이지에 noindex 메타 태그를 넣어야 크롤러가 그 지시를 읽을 수 있습니다.
모든 크롤러 차단을 고르면 어떻게 되나요?
Disallow 뒤에 슬래시 하나만 붙은 줄이 나와 사이트 전체를 읽지 말라고 요청합니다. 개발·테스트 서버에는 유용하지만 운영 사이트에 실수로 올라가면 검색 노출이 사라질 수 있으니 배포 전에 반드시 내용을 확인하세요.
사이트맵 줄은 꼭 넣어야 하나요?
필수는 아니지만 넣어 두면 크롤러가 페이지 목록을 찾기 쉬워집니다. 주소는 https부터 시작하는 전체 주소로 적고, 실제로 그 주소에서 사이트맵 파일이 열리는지 확인하세요.
특정 검색엔진만 막을 수 있나요?
이 도구는 모든 크롤러를 대상으로 하는 규칙을 만듭니다. 특정 봇만 다루려면 만들어진 내용을 복사한 뒤 User-agent 줄을 그 봇 이름으로 바꾼 블록을 따로 추가하면 됩니다. 다만 규칙을 지킬지는 크롤러의 선택이라 악성 봇에는 효과가 없습니다.
어떤 문제가 있었는지 알려주시면 빠르게 고치겠습니다. (회신이 필요하면 이메일을 남겨주세요)