검색엔진에게 주는 지도

새 페이지가 검색에 안 잡힐 때 쓰는 파일 두 장이에요. 한 장은 안에 무엇이 있는지 알려 주고 한 장은 어디를 열지 말지 부탁해요. 두 장 다 게시할 때마다 같이 나가야 하는 종이라, 사고는 거의 게시하는 날에 나요.

쉽게 말하면

가게 인테리어를 하는 동안 문에 "공사 중, 들어오지 마세요" 종이를 붙여 두잖아요. 개업일 아침에 그 종이를 떼는 걸 잊으면, 간판도 불도 다 켜져 있는데 손님은 문 앞에서 돌아가요. 검색엔진에게 주는 지도 두 장이 딱 이 종이예요. 가게 안이 아니라 문 앞에 붙는 것이라서, 새로 칠할 때마다 다시 붙여야 하고 뗄 때를 놓치면 손님이 통째로 사라져요.

두 장의 실제 이름은 robots.txtsitemap.xml 이에요. 내 주소 뒤에 `/robots.txt`, `/sitemap.xml` 을 붙이면 사장님도 지금 바로 열어 볼 수 있어요. 예쁘게 안 보이는 게 정상이에요. 사람이 아니라 기계가 읽는 종이거든요.

게시하고 끝낸 경우
게시 완료 · 문 앞 두 장은 안 열어 봄 · 만드는 동안 걸어 둔 차단 그대로 · 새 화면 주소는 옛 목록에 없음

화면은 멀쩡히 열리고 링크를 보내면 손님도 잘 들어와요. 그런데 검색에서는 몇 달이 지나도 안 나와요. 아무도 오류 화면을 못 보니 원인을 찾는 데만 몇 주가 걸려요.

게시하고 3분 더 쓴 경우
게시 완료 · `/robots.txt` 열어 차단 줄 확인 · `/sitemap.xml` 열어 새 주소 확인 · 관리 도구에 제출 상태 확인

잘못돼 있으면 그날 발견해요. 하루 안에 고치는 것과 두 달 뒤에 고치는 것은 같은 작업인데 잃는 손님 수가 달라요.

파일 안에 어떤 칸이 있고 검색엔진이 어느 칸을 보는지는 검색 로봇에게 지도 주기에 적혀 있어요. 이 문서가 맡는 건 그 옆자리예요. 게시하는 날과 주소를 바꾸는 날에 이 두 장을 어떻게 다루느냐.

두 장이 하는 말은 정반대예요

이름이 나란히 붙어 다녀서 같은 편으로 보이는데, 하는 말이 반대예요. 여기에 화면 자체에 넣는 표시 하나를 더해 세 가지가 돼요. 셋을 섞으면 서로를 방해해요.

무엇무슨 말을 하나어디에 놓이나잘못 두면
robots.txt"여기는 들어오지 마세요"라고 부탁해요. 막는 쪽이에요주소 맨 앞 자리 한 장뿐이에요. 사이트 전체에 하나예요전체를 막아 두면 사이트가 통째로 검색에서 사라져요. 이 문서에서 가장 비싼 사고예요
sitemap.xml"안에 이런 화면들이 있어요"라고 알려 줘요. 부르는 쪽이에요역시 파일 한 장이고, robots.txt 안에 위치를 한 줄로 적어 둘 수 있어요옛 목록이 남아 있으면 로봇이 없어진 문 앞에 서요. 새 화면은 계속 발견이 늦어요
화면 안의 색인 금지 표시"이 화면은 검색 결과에 싣지 말아 주세요"라고 화면 스스로 말해요파일이 아니라 그 화면 안에 들어가요. 화면마다 따로 정해요막는 것과 같이 걸면 로봇이 표시를 읽지 못해요. 아래 당부가 이 이야기예요

둘을 동시에 걸면 아무것도 안 돼요

특정 화면을 검색에서 빼고 싶을 때 robots.txt 로 막고 화면에 색인 금지 표시까지 넣는 분이 있어요. 순서가 어긋나요. 막아 두면 로봇이 그 화면을 아예 안 읽으니, 안에 적어 둔 금지 표시도 못 읽어요. 검색에서 빼는 게 목적이면 화면은 열어 두고 표시로 말해요. 로봇을 아끼는 게 목적이면 막아요. 목적을 하나만 고르는 게 규칙이에요.

그리고 robots.txt 는 누구나 열어 볼 수 있는 공개 파일이에요. 여기에 감추고 싶은 주소를 적으면 그 주소를 세상에 알려 주는 셈이 돼요. 사람이 못 들어오게 막는 일은 이 파일이 아니라 로그인과 권한이 맡아요.

게시할 때마다 쓰는 3분

두 장은 만들어 두는 물건이 아니라 게시본에 같이 실려 나가는 물건이에요. 그래서 게시 절차의 마지막 칸에 넣어 두면 사고가 거의 안 나요. 순서대로 3분이면 끝나요.

  1. 1게시가 끝난 진짜 주소를 열어요. 연습 주소가 아니라 손님이 보는 주소여야 해요. 게시가 끝난 걸 먼저 확인하고 시작해요.
  2. 2주소 뒤에 `/robots.txt` 를 붙여 열어요. 화면을 찾을 수 없다고 나오면 게시본에 파일이 안 실린 거예요. 여기서 멈추고 고쳐요.
  3. 3전체를 막는 줄이 남아 있는지 봐요. 만드는 동안 걸어 둔 차단이 그대로 나가는 사고가 가장 흔해요. 이 줄 하나가 검색 유입 전부예요.
  4. 4같은 파일에 지도 위치 한 줄이 있는지 봐요. 이 한 줄이 검색엔진마다 따로 제출하지 않아도 지도를 찾아가게 하는 가장 값싼 방법이에요.
  5. 5주소 뒤에 `/sitemap.xml` 을 붙여 열어요. 오늘 새로 만든 화면 주소가 목록 안에 있는지 눈으로 찾아요. 없으면 목록이 자동으로 안 따라오고 있다는 뜻이에요.
  6. 6검색엔진 관리 도구에서 제출 상태를 봐요. 구글은 서치 콘솔, 네이버는 서치어드바이저를 쓰고 둘 다 무료예요. 계정은 사장님 명의여야 나중에도 숫자를 볼 수 있어요.

그날 바로 검색에 뜨지는 않아요

확인이 끝났다고 다음 날 검색에 나오는 게 아니에요. 며칠에서 몇 주가 정상 범위고, 이제 막 연 사이트는 더 걸려요. 3분 점검이 보장하는 건 속도가 아니라 막혀 있지 않다는 사실 하나예요. 막혀 있으면 몇 달을 기다려도 안 나오니, 기다리기 전에 이걸 먼저 확인하는 거예요.

실제로 나는 사고 다섯 가지

이 두 장에서 나는 사고는 종류가 적어요. 다섯 개를 알아 두면 원인 찾기가 몇 분으로 줄어요. 증상이 전부 "화면은 멀쩡한데 검색에만 없다"로 똑같이 보이는 게 함정이에요.

사고무슨 일이 벌어진 건가어떻게 확인하나
만드는 동안 걸어 둔 차단을 안 풀었어요사이트 전체가 로봇에게 닫혀 있어요. 손님은 잘 들어오니 아무도 못 알아채요`/robots.txt` 를 열어 전체를 막는 줄이 있는지 봐요. 게시 직후 1분이면 끝나요
연습 주소가 검색에 잡혔어요손님이 연습용 사이트로 들어가 주문을 넣어요. 옛 가격표와 옛 재고가 손님 눈에 보여요가게 이름으로 검색해서 낯선 주소가 같이 뜨는지 봐요. 연습 무대 쪽 규칙과 같이 봐요
게시본에 두 장이 안 실렸어요만들 때는 있었는데 실제로 나간 판에는 없어요. 로봇에게는 처음부터 없던 파일이에요두 주소를 직접 열어요. 화면을 찾을 수 없다고 나오면 그게 답이에요
지도에 옛 주소만 남아 있어요목록이 자동으로 안 따라와요. 새로 만든 화면은 몇 달이 지나도 발견이 안 돼요`/sitemap.xml` 을 열어 최근에 만든 화면 주소를 찾아봐요. 없으면 사람이 관리하는 목록이에요
지도에 적힌 주소와 실제 주소가 달라요www 가 붙은 주소와 안 붙은 주소, 옛 도메인과 새 도메인이 섞여요. 로봇이 헛걸음해요지도에 적힌 주소 하나를 복사해 그대로 열어 봐요. 다른 주소로 넘어가면 대표 주소를 안 맞춘 거예요

장면 1 · 외주 개발자가 개발 중에 말했다

지금은 검색 로봇 막아 뒀어요. 오픈하면 풀게요.

맞는 조치예요. 만드는 중인 화면이 검색에 실리면 나중에 빼기가 번거로우니까요. 문제는 "오픈하면 푼다"가 사람의 기억에 맡겨져 있다는 것이에요. 여기서 할 말은 하나예요. "푸는 것도 오픈 점검 목록에 한 줄로 넣어 주세요." 그리고 오픈 당일에 사장님이 직접 `/robots.txt` 를 열어 보세요. 이 확인은 코드를 몰라도 할 수 있어요.

장면 2 · 오픈 두 달 뒤 손님이 전화했다

검색해서 들어가 주문했는데요, 가격이 어제 본 거랑 다르다고 하시네요.

손님이 연습용 주소로 들어간 상황이에요. 연습 주소는 손님에게 진짜 주소와 똑같이 생겼어요. 순서가 있어요. 연습 주소는 로봇에게 막아 두고, 이미 검색에 실린 것은 관리 도구에서 삭제를 요청해요. 그리고 이번 손님 주문은 진짜 쪽에 들어오지 않았으니 그것부터 처리해요. 연습 주소를 검색에서 여는 실수는 연습 무대를 쓰는 가게가 거의 한 번씩 겪어요.

주소를 바꾸는 날

이 두 장이 두 번째로 사고를 내는 순간이 주소가 바뀌는 날이에요. 도메인을 옮기거나 화면 구조를 개편하면, 지도는 어제까지의 주소를 그대로 들고 있어요. 로봇은 그 지도를 믿고 없는 문 앞으로 계속 가요.

바뀐 것두 장에서 할 일같이 볼 것
도메인을 새로 샀어요지도 안의 주소를 새 도메인으로 통째로 갈아요. 옛 도메인에도 두 장이 남아 있는지 확인해요도메인주소 안내소 쪽 설정을 먼저 끝내고 손대요
페이지 주소만 바꿨어요지도에서 옛 주소를 빼고 새 주소를 넣어요. 옛 주소는 새 주소로 넘겨줘요주소 옮기기. 넘겨주기를 안 하면 옛 링크와 검색 성적을 잃어요
보안 연결로 바꿨어요지도 안 주소를 전부 `https` 로 시작하게 맞춰요. 두 가지가 섞이면 힘이 나뉘어요보안 연결. 대표 주소를 한쪽으로 정하는 일이 먼저예요
화면을 크게 개편했어요없어진 화면이 지도에 남아 있는지 훑어요. 죽은 주소가 많은 지도는 신뢰를 잃어요여러 페이지 구조를 바꿀 때는 메뉴와 지도를 같이 손봐요

순서가 중요해요

셋 다 하되 순서를 지켜요. 새 주소를 먼저 열고, 지도를 새 주소로 갈고, 옛 주소는 새 주소로 넘겨줘요. 순서를 뒤집어 옛 주소를 먼저 닫으면, 그 사이에 들어온 손님과 로봇은 없어진 문 앞에 서요. 두 주소가 며칠 같이 살아 있는 건 사고가 아니라 정상적인 이사 방법이에요.

자주 묻는 것

Q. 화면이 한 장뿐인데도 두 장을 만들어야 하나요?
지도 쪽은 급하지 않아요. 찾을 화면이 하나뿐이라 안내가 필요 없거든요. 다만 robots.txt 는 한 번 열어 보는 게 좋아요. 만드는 동안 전체를 막아 둔 상태로 열었다면 화면이 한 장이든 백 장이든 검색에는 안 나와요.
Q. 지도를 냈는데 왜 아직 검색에 없나요?
지도는 초대장이에요. 실을지 말지는 검색엔진이 정해요. 글자가 거의 없는 화면, 다른 화면과 내용이 사실상 같은 화면은 발견되고도 안 실려요. 관리 도구가 화면별로 이유를 알려 주니 그 이유를 먼저 읽는 게 순서예요.
Q. 검색 유입이 어느 날 갑자기 0이 됐어요. 어디부터 보나요?
`/robots.txt` 부터 열어요. 전체를 막는 줄이 새로 생겼는지 보는 게 1분이고, 이 원인이 의외로 많아요. 게시를 한 번 되돌려 본 날, 새 판을 올린 날, 사이트를 옮긴 날 뒤에 그런 일이 생겨요. 여기서 아니면 검색에 뜨게 하기 쪽 원인으로 넘어가요.
Q. 관리 도구 등록은 대행사에 맡겨도 되나요?
작업은 맡겨도 되는데 계정은 사장님 명의로 두세요. 업체 계정으로 등록해 두면 계약이 끝나는 날 그동안의 숫자도 같이 사라져요. 이건 인수인계에서 매번 문제가 되는 항목이에요.
Q. 지도를 손으로 적어도 되나요?
적을 수는 있는데 오래 못 가요. 화면을 하나 만들 때마다 사람이 손대야 하면 두세 달 뒤에는 반드시 밀려요. 화면이 늘 때 목록이 자동으로 따라오게 만들어 두는 편이 훨씬 싸요.
Q. 연습 주소는 어떻게 막나요?
연습 주소에는 진짜 주소와 다른 robots.txt 를 둬요. 진짜 쪽은 열고 연습 쪽은 전체를 막는 거예요. 두 주소가 같은 파일을 쓰고 있으면 한쪽을 막는 순간 다른 쪽도 같이 막히니, 만들 때 이 점을 미리 정해 둬야 해요.

확인해 보세요

오픈 뒤 두 달, 손님은 링크로 잘 들어오는데 검색에는 첫 화면조차 안 나와요. 가장 먼저 볼 것은?

하나 더

결제 완료 화면을 검색에서 빼려고 해요. robots.txt 로 막고 화면에 색인 금지 표시도 넣었어요. 무엇이 문제인가요?

직접 해보기

지금 두 주소를 열어 보세요

이미 게시한 사이트가 있으면 주소 뒤에 `/robots.txt` 와 `/sitemap.xml` 을 각각 붙여 열어 보세요. 3분이면 끝나고, 검색 문제의 절반이 여기서 걸러져요. 아직 만드는 중이라면 스튜디오에서 이 문장을 그대로 주문해 보세요. "게시본에 robots.txt 와 화면 목록 파일이 같이 들어가게 해 주세요. 목록은 화면이 늘 때 자동으로 채워지게 하고, 연습 주소는 로봇을 막아 주세요."

스튜디오에서 주문해 보기

더 깊이 (안 읽어도 괜찮아요)

왜 하필 문 앞이 아니라 코드 안에 있으면 안 되나 · 두 장은 반드시 주소의 맨 앞자리에서 열려야 해요. 로봇은 낯선 집에 오면 `주소/robots.txt` 를 먼저 두드리도록 정해져 있고, 거기 없으면 없는 것으로 치고 지나가요. 그래서 이 파일들은 만든 사람의 컴퓨터에 있는 게 아니라 게시된 판에 실려 있어야 의미가 생겨요. "만들었는데 왜 안 되죠"라는 질문의 절반이 이 차이예요. 만든 것과 나간 것은 다른 이야기고, 확인법은 그 주소를 직접 열어 보는 것 하나뿐이에요.

차단은 부탁이지 자물쇠가 아니에요 · robots.txt 는 강제력이 없어요. 예의를 지키는 검색 로봇은 따르지만, 무단으로 자료를 긁어 가는 쪽은 이 파일을 무시해요. 그래서 이 파일에 "관리자 화면 오지 마세요"라고 적는 건 자물쇠를 다는 게 아니라 자물쇠 위치를 알려 주는 안내문을 다는 것에 가까워요. 지켜야 할 화면은 로그인 뒤로 옮기고, 이 파일에는 굳이 적지 않는 편이 안전해요.

옛 파일이 남아 보이는 경우 · 고쳐서 다시 게시했는데 열어 보면 옛 내용이 그대로일 때가 있어요. 중간에 사본을 들고 있는 곳이 있어서 그래요. 이럴 땐 브라우저를 강하게 새로 고치거나 잠시 뒤에 다시 열어 보세요. 그래도 옛 내용이면 게시가 실제로 끝났는지부터 확인해요. 검색엔진 쪽에서도 이 파일을 매번 새로 읽지는 않아서, 고친 내용이 반영되기까지 하루 이상 걸릴 수 있어요. 그러니 오픈 당일 아침이 아니라 오픈 며칠 전에 차단을 푸는 편이 마음이 편해요.

이것만 기억하세요

  • ·두 장은 가게 안이 아니라 문 앞에 붙는 종이예요. 게시할 때마다 같이 나가야 해요
  • ·robots.txt 는 막는 쪽, 화면 목록 파일은 부르는 쪽이에요. 하는 말이 정반대예요
  • ·검색 유입이 통째로 없을 때 1분짜리 첫 확인은 `/robots.txt` 에 전체 차단이 남아 있는지예요
  • ·검색에서 빼려면 막지 말고 화면 안의 색인 금지 표시로 말해요. 둘을 같이 걸면 서로를 방해해요
  • ·주소를 바꾸는 날은 새 주소를 열고, 지도를 갈고, 옛 주소를 넘겨주는 순서로 해요
VibeCampus新規ビルド