36919
•
10분 읽기
•
사이트 페이지의 색인화는 검색 엔진 최적화 프로세스의 시작입니다. 엔진 봇이 콘텐츠에 액세스하도록 허용한다는 것은 페이지가 방문자를 위해 준비되었으며, 기술적 문제가 없으며, SERP에 표시되기를 원한다는 것을 의미하므로 모든 것을 포괄하는 색인화는 첫눈에 보기에 엄청난 이점처럼 들립니다.
그러나 특정 유형의 페이지는 순위를 확보하기 위해 SERP에서 멀리하는 것이 좋습니다. 즉, 인덱싱에서 숨겨야 합니다. 이 게시물에서는 검색 엔진에서 숨겨야 할 콘텐츠 유형을 안내하고 그 방법을 보여드리겠습니다.
더 이상 미루지 말고 본론으로 들어가겠습니다. 검색 엔진에서 숨겨야 할 페이지 목록은 다음과 같습니다. SERP에 나타나지 않도록 하기 위해서요.
페이지에 개인 정보가 있는 경우 직접 검색 트래픽으로부터 콘텐츠를 보호하는 것이 필수입니다. 이러한 페이지에는 기밀 회사 세부 정보, 알파 제품에 대한 정보, 사용자 프로필 정보, 비공개 서신, 결제 데이터 등이 있습니다. 비공개 콘텐츠는 데이터 소유자 외에는 누구에게도 숨겨야 하므로 Google(또는 모든 검색 엔진)은 이러한 페이지를 더 많은 사람에게 공개해서는 안 됩니다.
로그인 양식이 홈페이지가 아닌 별도 페이지에 배치된 경우, SERP에 이 페이지를 표시할 실제적인 필요성은 없습니다. 이러한 페이지는 사용자에게 추가 가치를 제공하지 않으며, 이는 빈약한 콘텐츠 로 간주될 수 있습니다.
이는 웹사이트에서 성공적인 액션을 취한 후 사용자가 보는 페이지입니다. 구매, 등록 또는 기타 모든 것이 될 수 있습니다. 이러한 페이지는 또한 얇은 콘텐츠를 포함하고 검색자에게 추가 가치가 거의 없거나 전혀 없을 가능성이 높습니다.
이러한 유형의 페이지에 있는 콘텐츠는 웹사이트의 주요 페이지에 있는 콘텐츠와 중복됩니다. 즉, 이러한 페이지는 크롤링 및 인덱싱될 경우 전체 콘텐츠 중복으로 처리됩니다.
이는 크기나 색상만 다른 많은 제품을 보유한 대형 전자상거래 웹사이트에서 흔히 발생하는 문제입니다. Google은 이러한 제품의 차이를 알아차리지 못하고 콘텐츠 중복으로 처리할 수 있습니다.
사용자가 SERP에서 귀하의 웹사이트에 접속할 때, 그들은 귀하의 링크를 클릭하여 질문에 대한 답을 찾을 것으로 기대합니다. 링크가 잔뜩 있는 또 다른 내부 SERP가 아닙니다. 따라서 내부 SERP가 색인화되면, 페이지 방문 시간이 짧고 이탈률이 높을 가능성이 큽니다.
블로그에 한 명의 작성자가 쓴 게시물이 모두 있는 경우, 해당 작성자의 바이오 페이지는 블로그 홈페이지와 완전히 똑같습니다.
로그인 페이지와 마찬가지로 구독 양식은 일반적으로 구독을 위해 데이터를 입력하는 양식 외에는 아무것도 없습니다. 따라서 a) 페이지는 비어 있고 b) 사용자에게 가치를 제공하지 않습니다. 그래서 검색 엔진이 SERP로 끌어오는 것을 제한해야 합니다.
경험에 따르면, 개발 중인 페이지는 방문자가 볼 수 있을 만큼 완전히 준비될 때까지 검색 엔진 크롤러에서 멀리 떨어져 있어야 합니다.
미러 페이지는 별도의 서버/위치에 있는 귀하의 페이지와 동일한 사본입니다. 크롤링 및 인덱싱되면 기술적 중복으로 간주됩니다.
특별 행사 및 광고 페이지는 사용자가 특별한 작업을 완료하거나 특정 기간(특별 행사, 이벤트 등) 동안만 볼 수 있도록 되어 있습니다. 이벤트가 끝나면 검색 엔진을 포함하여 누구에게도 이러한 페이지를 볼 필요가 없습니다.
이제 질문은 다음과 같습니다. 위에서 언급한 모든 페이지를 귀찮은 스파이더로부터 숨기고 나머지 웹사이트는 원래대로 보이게 유지하는 방법은 무엇일까요?
검색 엔진에 대한 지침을 설정할 때 두 가지 옵션이 있습니다. 크롤링을 제한하거나 페이지 인덱싱을 제한할 수 있습니다.
아마도 검색 엔진 크롤러가 페이지에 액세스하는 것을 제한하는 가장 간단하고 직접적인 방법은 robots.txt 파일을 만드는 것입니다. robots.txt 파일을 사용하면 모든 원치 않는 콘텐츠를 검색 결과에서 사전에 차단할 수 있습니다. 이 파일을 사용하면 단일 페이지, 전체 디렉토리 또는 단일 이미지나 파일에 대한 액세스를 제한할 수 있습니다.
절차는 매우 쉽습니다. 다음 필드가 있는.txt 파일을 만들기만 하면 됩니다.
일부 크롤러(예: Google)는 Allow: 라는 추가 필드도 지원합니다. 이름에서 알 수 있듯이 Allow: 를 사용 하면 크롤링할 수 있는 파일/폴더를 명시적으로 나열할 수 있습니다.
다음은 robots.txt 파일의 몇 가지 기본적인 예입니다.
* User-agent 줄에 있는 것은 모든 검색 엔진 봇이 귀하의 사이트 페이지를 크롤링하지 않도록 지시받았다는 것을 의미하며, 이는 / 로 표시됩니다. 아마도 이것이 피하고 싶은 것이겠지만, 이제 아이디어를 얻으셨을 겁니다.
위의 예를 사용하면 Google 이미지 봇이 선택한 디렉토리의 이미지를 크롤링하지 못하도록 제한할 수 있습니다.
이러한 파일을 수동으로 작성하는 방법에 대한 자세한 지침은 Google 개발자 가이드에서 확인할 수 있습니다.
하지만 robots.txt를 만드는 과정은 완전히 자동화될 수 있습니다. 이러한 파일을 만들 수 있는 도구가 매우 다양합니다. 예를 들어, WebSite Auditor는 귀하의 웹사이트를 위한 robots.txt 파일을 쉽게 컴파일할 수 있습니다.
도구를 실행하고 웹사이트 프로젝트를 생성하려면 사이트 구조 > 페이지 로 이동한 후 렌치 아이콘을 클릭하고 Robots.txt를 선택합니다.
그런 다음 규칙 추가를 클릭하고 지침을 지정합니다. 검색 봇과 크롤링을 제한하려는 디렉토리 또는 페이지를 선택합니다.
모든 설정을 마치면 '다음' 을 클릭하여 도구에서 robots.txt 파일을 생성하고 이를 웹사이트에 업로드하세요.
크롤링이 차단된 리소스를 확인하고 크롤링이 허용되어야 할 항목이 차단되지 않았는지 확인하려면 사이트 구조 > 사이트 감사 로 이동하여 인덱싱이 제한된 리소스 섹션을 확인하세요.
또한 robots.txt 프로토콜은 순전히 권고 사항이라는 점을 명심하세요. 사이트 페이지에 대한 잠금이 아니라 "개인 - 차단"과 비슷합니다. robots.txt는 "법을 준수하는" 봇(예: Google, Yahoo!, Bing 봇)이 콘텐츠에 액세스하는 것을 방지할 수 있습니다. 그러나 악의적인 봇은 이를 무시하고 어쨌든 콘텐츠를 살펴봅니다. 따라서 공정 사용이라는 명목으로 개인 데이터가 스크래핑, 컴파일 및 재사용될 위험이 있습니다. 콘텐츠를 100% 안전하게 유지하려면 보다 안전한 조치를 도입해야 합니다(예: 사이트에 등록 추가, 비밀번호로 콘텐츠 숨기기 등).
robots.txt 파일을 만들 때 사람들이 저지르는 가장 흔한 실수는 다음과 같습니다. 이 부분을 주의 깊게 읽어보세요.
1) 파일 이름에 대문자를 사용합니다. 파일 이름은 robots.txt입니다. 마침표. Robots.txt도 아니고 ROBOTS.txt도 아닙니다.
2) robots.txt 파일을 메인 디렉토리에 두지 않음
3) 다음과 같은 방법으로 허용하지 않음 지침을 남겨두어 전체 웹사이트를 차단합니다(원하지 않는 한).
4) 사용자 에이전트를 잘못 지정함
5) 한 줄에 여러 카탈로그를 언급하는 것은 허용되지 않습니다. 각 페이지 또는 디렉토리에는 별도의 줄이 필요합니다.
6) 사용자 에이전트 라인을 비워두기
7) 디렉토리 내의 모든 파일을 나열합니다. 전체 디렉토리를 숨기는 경우 모든 파일을 나열할 필요가 없습니다.
8) disallow 지침 줄을 전혀 언급하지 않음
9) robots.txt 파일 하단에 사이트맵을 명시하지 않음
10) 파일에 noindex 명령어 추가
로봇 noindex 메타 태그나 X-Robots 태그를 사용하면 검색 엔진 봇이 페이지를 크롤링하고 액세스할 수 있지만, 페이지가 인덱스에 들어가지 못해 검색 결과에 나타나지 않습니다.
이제 각 옵션을 자세히 살펴보겠습니다.
로봇 noindex 메타 태그는 페이지의 HTML 소스(<head> 섹션)에 배치됩니다. 이러한 태그를 만드는 과정에는 약간의 기술적 노하우만 필요하며, 초보 SEO라도 쉽게 할 수 있습니다.
Google 봇이 페이지를 가져오면 noindex 메타 태그를 보고 이 페이지를 웹 인덱스에 포함하지 않습니다. 페이지는 여전히 크롤링되고 주어진 URL에 존재하지만 다른 페이지에서 얼마나 자주 링크되든 검색 결과에는 나타나지 않습니다.
<메타 이름="로봇" 콘텐츠="인덱스, 팔로우">
이 메타 태그를 페이지의 HTML 소스에 추가하면 검색 엔진 봇이 이 페이지와 해당 페이지에서 나오는 모든 링크를 인덱싱하도록 할 수 있습니다.
<메타 이름="로봇" 콘텐츠="인덱스, nofollow">
'follow'를 'nofollow'로 변경하면 검색 엔진 봇의 동작에 영향을 미칩니다. 위에서 언급한 태그 구성은 검색 엔진에 페이지를 인덱싱하도록 지시하지만, 페이지에 배치된 링크를 따르지 않도록 지시합니다.
<meta name="robots" content="noindex, 팔로우">
이 메타 태그는 검색 엔진 봇에게 이 메타 태그가 배치된 페이지는 무시하고, 그 페이지에 배치된 모든 링크는 따라가라고 알려줍니다.
<메타 이름="로봇" 콘텐츠="noindex, nofollow">
이 태그를 페이지에 배치하면 해당 페이지나 이 페이지에 포함된 링크가 팔로우되거나 인덱싱되지 않음을 의미합니다.
로봇 noindex 메타 태그 외에도 noindex 또는 none 값을 갖는 X-Robots-Tag로 HTTP 헤더 응답을 설정하여 페이지를 숨길 수 있습니다.
X-Robots-Tag를 사용하면 페이지와 HTML 요소 외에도 로봇 메타 태그를 사용할 수 없는 PDF 파일, 비디오, 이미지 또는 기타 HTML이 아닌 파일을 별도로 noindex할 수 있습니다.
이 메커니즘은 noindex 태그와 거의 비슷합니다. 검색 봇이 페이지에 오면 HTTP 응답은 noindex 지침이 포함된 X-Robots-Tag 헤더를 반환합니다. 페이지나 파일은 여전히 크롤링되지만 검색 결과에는 나타나지 않습니다.
이는 페이지를 인덱싱하지 말라는 지시가 포함된 HTTP 응답의 가장 일반적인 예입니다.
HTTP/1.1 200 확인
(…)
X-Robots-태그: noindex
(…)
특정 봇에서 페이지를 숨겨야 하는 경우 검색 봇의 유형을 지정할 수 있습니다. 아래 예는 Google을 제외한 다른 검색 엔진에서 페이지를 숨기고 모든 봇이 해당 페이지의 링크를 따르지 못하도록 제한하는 방법을 보여줍니다.
X-Robots-태그: googlebot: nofollow
X-Robots-태그: otherbot: noindex, nofollow
로봇 유형을 지정하지 않으면 모든 유형의 크롤러에 대한 지침이 적용됩니다.
웹사이트 전체에서 특정 유형의 파일 인덱싱을 제한하려면 X-Robots-Tag 응답 지침을 사이트 웹 서버 소프트웨어의 구성 파일에 추가할 수 있습니다.
Apache 기반 서버에서 모든 PDF 파일을 제한하는 방법은 다음과 같습니다.
<파일 ~ "\.pdf$">
헤더 세트 X-Robots-Tag "noindex, nofollow"
</파일>
NGINX에 대한 동일한 지침은 다음과 같습니다.
위치 ~* \.pdf$ {
add_header X-Robots-Tag "noindex, nofollow";
}
단일 요소의 인덱싱을 제한하기 위한 Apache의 패턴은 다음과 같습니다.
# htaccess 파일은 일치된 파일이 있는 디렉토리에 있어야 합니다.
<파일 "unicorn.pdf">
헤더 세트 X-Robots-Tag "noindex, nofollow"
</파일>
NGINX에서 한 요소의 인덱싱을 제한하는 방법은 다음과 같습니다.
위치 = /secrets/unicorn.pdf {
add_header X-Robots-Tag "noindex, nofollow";
}
로봇 noindex 태그는 페이지 인덱싱을 제한하는 더 쉬운 솔루션처럼 보이지만 페이지에 X-Robots-Tag를 사용하는 것이 더 나은 옵션인 경우도 있습니다.
그래도 X-Robots-Tag 지침을 따르는 것은 확실히 Google뿐이라는 점을 기억하세요. 나머지 검색 엔진의 경우 태그를 올바르게 해석할 것이라는 보장은 없습니다. 예를 들어, Seznam은 x‑robots-tags를 전혀 지원하지 않습니다. 따라서 웹사이트가 다양한 검색 엔진에 나타나도록 계획하는 경우 HTML 스니펫에서 robots noindex 태그를 사용해야 합니다.
noindex 태그를 사용할 때 사용자가 저지르는 가장 흔한 실수는 다음과 같습니다.
1) robots.txt 파일에 noindexed 페이지나 요소를 추가합니다. robots.txt는 크롤링을 제한하므로 검색 봇이 페이지에 와서 noindex 지침을 보지 못합니다. 즉, 콘텐츠 없이 페이지가 인덱싱되어도 검색 결과에 나타날 수 있습니다.
noindex 태그가 있는 문서가 robots.txt 파일에 들어갔는지 확인하려면 WebSite Auditor 의 사이트 구조 > 페이지 섹션에서 로봇 지침 열을 확인하세요.
참고: 프로젝트를 구성할 때 전문가 옵션을 활성화하고 robots.txt 지침 따르기 옵션의 선택을 취소하여 도구가 지침을 인식하지만 따르지 않도록 하는 것을 잊지 마세요.
2) 태그 지시문에서 대문자 사용. Google에 따르면 모든 지시문은 대소문자를 구분하므로 조심하세요.
이제 주요 콘텐츠 인덱싱 문제에 대한 모든 것이 어느 정도 명확해졌으므로 특별히 언급할 만한 몇 가지 비표준 사례로 넘어가겠습니다.
1) 인덱싱하고 싶지 않은 페이지가 사이트맵에 포함되지 않았는지 확인하세요. 사이트맵은 실제로 검색 엔진에 웹사이트를 크롤링할 때 먼저 어디로 가야 하는지 알려주는 방법입니다. 그리고 검색 봇에게 보고 싶지 않은 페이지를 방문하라고 요청할 이유가 없습니다.
2) 그래도 사이트맵에 이미 있는 페이지의 색인을 해제해야 하는 경우 검색 로봇이 페이지를 다시 크롤링하고 색인을 해제할 때까지 사이트맵에서 페이지를 제거하지 마세요. 그렇지 않으면 색인 해제에 예상보다 더 많은 시간이 걸릴 수 있습니다.
3) 개인 데이터가 포함된 페이지를 비밀번호로 보호하세요. 비밀번호 보호는 robots.txt 지침을 따르지 않는 봇에서도 민감한 콘텐츠를 숨기는 가장 신뢰할 수 있는 방법입니다. 검색 엔진은 비밀번호를 모르기 때문에 페이지에 도달하지 못하고 민감한 콘텐츠를 보지 못하며 페이지를 SERP로 가져오지 못합니다.
4) 검색 봇이 페이지 자체를 noindex하지 않고 페이지에 있는 모든 링크를 따라가서 해당 URL의 콘텐츠를 인덱싱하도록 하려면 다음 지침을 설정합니다.
<meta name="robots" content="noindex, 팔로우">
이는 내부 검색 결과 페이지에서 흔히 볼 수 있는 관행으로, 많은 유용한 링크가 포함되어 있지만 그 자체로는 아무런 가치가 없습니다.
5) 특정 로봇에 대한 인덱싱 제한을 지정할 수 있습니다. 예를 들어, 뉴스 봇, 이미지 봇 등으로부터 페이지를 잠글 수 있습니다. 봇의 이름은 robots.txt 파일, robots 메타 태그 또는 X-Robots-Tag 등 모든 유형의 지침에 대해 지정할 수 있습니다.
예를 들어, robots.txt를 사용하여 ChatGPT 봇에서 특별히 페이지를 숨길 수 있습니다. ChatGPT 플러그인과 GPT-4(OpenAI가 이제 웹에서 정보를 얻을 수 있음을 의미)가 발표된 이후, 웹사이트 소유자는 콘텐츠 사용에 대해 우려해 왔습니다. 인용, 표절 및 저작권 문제는 많은 사이트에서 심각해졌습니다.
이제 SEO 세계는 분열되었습니다. 어떤 사람들은 GPTBot이 우리 사이트에 접근하는 것을 차단해야 한다고 말하고, 다른 사람들은 그 반대라고 말하고, 세 번째는 무언가가 더 명확해질 때까지 기다려야 한다고 말합니다. 어떤 경우든, 여러분은 선택권이 있습니다.
GPTBot을 차단해야 한다고 확신한다면 다음과 같은 방법으로 차단할 수 있습니다.
사이트 전체를 닫고 싶은 경우.
사용자 에이전트: GPTBot
허용 안 함: /
사이트의 특정 부분만 닫고 싶은 경우
사용자 에이전트: GPTBot
허용: /directory-1/
허용 안 함: /directory-2/
6) 사용자의 일부가 페이지 A에서 페이지 B로 리디렉션될 때 A/B 테스트에서 noindex 태그를 사용하지 마세요. noindex가 301(영구) 리디렉션과 결합된 것처럼 검색 엔진은 다음과 같은 신호를 받게 됩니다.
결과적으로 A 페이지와 B 페이지 모두 색인에서 사라집니다.
A/B 테스트를 올바르게 설정하려면 301 대신 302 리다이렉션(임시)을 사용하세요. 이렇게 하면 검색 엔진이 이전 페이지를 인덱스에 보관하고 테스트를 마치면 다시 가져올 수 있습니다. 여러 버전의 페이지(A/B/C/D 등)를 테스트하는 경우 rel=canonical 태그를 사용하여 SERP에 표시되어야 하는 페이지의 표준 버전을 표시하세요.
7) noindex 태그를 사용하여 임시 랜딩 페이지를 숨깁니다. 특별 행사, 광고 페이지, 할인 또는 유출되어서는 안 되는 모든 유형의 콘텐츠가 있는 페이지를 숨기는 경우 robots.txt 파일로 이 콘텐츠를 허용하지 않는 것은 좋은 생각이 아닙니다. 매우 호기심이 많은 사용자는 robots.txt 파일에서 여전히 이러한 페이지를 볼 수 있습니다. 이 경우 noindex를 사용하는 것이 더 좋으며, 공개적으로 "비밀" URL을 실수로 손상시키지 않도록 하기 위해서입니다.
이제 검색 엔진 봇의 관심에서 웹사이트의 특정 페이지를 찾아 숨기는 방법의 기본 사항을 알게 되었습니다. 그리고 보시다시피, 그 과정은 사실 쉽습니다. 한 페이지에 여러 유형의 지침을 섞지 말고 검색에 나타나야 하는 페이지를 숨기지 않도록 주의하세요.
제가 놓친 게 있나요? 댓글로 질문을 공유해 주세요.