SEO 마케팅
검색 엔진이 이해하기 쉬운 사이트란? (robots.txt)
콜링크
21-09-09
자세한 설명을 시작하기 전에, 구글 검색 작동 방식을 간단히 알려드릴게요. 구글은 크롤링(crawling) → 색인 생성(indexing) → 게재(및 순위 지정) 과정을 거쳐 검색 결과를 생성합니다.

  • 크롤링은 검색 엔진이 웹에 어떤 페이지가 존재하는지 파악하는 작업입니다. 다른 페이지에 있는 링크를 타고 들어오거나, 각 사이트에서 제출하는 사이트맵을 통해 크롤링이 진행됩니다. 크롤링이 잘 진행되려면 검색 엔진이 해당 페이지에 접근할 수 있어야 하고, 페이지가 올바르게 표시되어야 합니다.
  • 색인 생성은 크롤링한 페이지가 어떤 페이지인지 파악하는 작업입니다. 검색 엔진은 페이지의 콘텐츠를 분석하고, 삽입된 이미지와 동영상을 파악해 목록을 작성하는 등의 방법으로 페이지를 파악합니다. 이렇게 생성한 색인은 검색 엔진에 저장됩니다.
  • 게재(및 순위 지정)는 검색 엔진 사용자가 입력한 검색어에 적절한 콘텐츠를 노출하는 작업입니다. 콘텐츠의 퀄리티는 물론 사용자의 위치나 PC·모바일 등의 접속 환경 또한 고려됩니다.
이 글에서 말하는 '검색 엔진이 이해하기 쉬운 사이트'란 이 과정들이 원활히 진행되는 사이트입니다. 체크리스트가 이런 맥락에서 나왔구나, 생각하면 이해가 쉬우실 거예요.*

* 구글의 검색 작동 방식이 더 궁금하다면 Google 검색 센터의 'Google 검색 작동 방식(초보자용)'을 참고하세요.

✅ robots.txt 크롤링 리스트 확인 및 설정하기

검색 엔진의 웹 크롤러(검색 로봇)는 웹사이트를 돌며 검색 결과에 노출시킬 콘텐츠를 찾습니다. robots.txt 파일을 활용하면 우리 사이트의 접근 가능한 페이지, 접근을 원하지 않는 페이지를 크롤러에게 알려줄 수 있어요.*

* 위 ✅ 네이버의 '사이트 간단 체크' 참고하기에서 'robots.txt' 항목에 문제가 없었다면 별도의 설정을 하지 않아도 괜찮습니다.


2b710d90eec10f0c33ad9c82d110ff53_1631185279_2159.png

모든 검색 엔진에서 사이트 전체가 크롤링되고 있는 robots.txt 파일의 예시
robots.txt 파일이 없다면 구글과 네이버는 사이트의 모든 페이지를 크롤러로 수집합니다. 이 경우 검색 노출에 문제가 되지 않지만, 파일이 있고 설정이 잘못되었다면 사이트 크롤링이 진행되지 않을 수 있어 확인이 필요해요.

robots.txt 파일 이외에도 페이지별 'robots 메타 태그'를 활용해 크롤링 및 색인을 제어할 수 있습니다. 아래 ✅ 검색 노출을 원하지 않는 페이지에 로봇 메타 태그 작성하기를 참고하세요.

robots.txt 파일로 크롤링을 막을 수 있지만, 메타 태그 등으로 색인을 금지하지 않는다면 검색 결과에 노출될 수 있습니다.*

* 구글 Search Console 고객센터의 '검색 결과에 페이지 정보가 표시되지 않음'을 참고하세요.
1) 앞서 설명한 네이버 '사이트 간단 체크'에서 'robots.txt'에 접근 관련 문제가 나온다면, 사이트 주소 뒤에 robots.txt를 붙여 접속해 보세요. 만약 아래와 같이 'Disallow:' 로 설정된 페이지가 있다면 해당 페이지는 크롤링이 되지 않는 것입니다.



2b710d90eec10f0c33ad9c82d110ff53_1631185317_6159.png

모든 검색 엔진에서 사이트의 /login 페이지가 크롤링되지 않는 robots.txt 파일의 예시. 이 경우 /login을 제외한 다른 페이지는 모두 크롤링됩니다.
2) 개발팀에 이렇게 말씀하세요.


우리 사이트 루트에 있는 robots.txt 파일을 확인해 보았는데, 검색 엔진 크롤러가 접근할 수 없는 상황인 것 같습니다. 크롤러 접근을 막아야 할 페이지 외에는 Disallow에서 제외해주실 수 있을까요? 감사합니다!


혹시 크롤러 접근을 막아야 할 페이지가 없다면, robots.txt의 파일 내용 중 "Disallow: /"를 "Allow: /"로 바꾸어 주시길 부탁드립니다. 감사합니다!

User-agent: 뒤에는 특정 검색 로봇의 이름(구글은 Googlebot, 네이버는 Yeti 등)을 넣어 검색 엔진별 크롤러를 설정할 수 있습니다. 위의 설명에서는 *을 입력해 모든 검색엔진의 크롤러를 지칭했습니다.

Allow: 와 Disallow: 는 사이트의 페이지별 접근 가능/불가 여부를 설정하는 데 쓰입니다. 자세한 설명 및 robots.txt 규칙은 Google 검색 센터의 'Robots.txt 파일 만들기'를 참고하세요.

원칙적으로, 익명의 사용자가 접근할 수 없는 페이지는 구글이 크롤링할 수 없습니다. 로그인 및 기타 승인 보호가 설정된 페이지는 크롤링되지 않으므로 일일이 별도의 작업을 하지 않아도 됩니다.