Victor

[연재] 협찬은 네이버에서 나온다 — 지수를 지키며 유입 보내기

연재 · 2026-09-07

매일 아침 9시에 협찬 글이 복사되고 있었습니다

 

7월 23일 아침 8시 6분 기록입니다.

 

[2026-07-23 08:05:58] 카테고리 15개 · 글 285편 목록 저장
[2026-07-23 08:06:02] 본문: 수집 7편 · 건너뜀 278 · 실패 0
[2026-07-23 08:06:02] 새 글 7편 발견
[2026-07-23 08:06:04] 이미지: 이미지 1개 저장 · 건너뜀 3115 · 실패 9
[2026-07-23 08:07:05] site/ 생성 · 글 287편 · 도구 5개 · 페이지 304개
[2026-07-23 08:07:05] ✨ Deployment complete!

 

네이버 블로그에 있는 글을 제 사이트로 옮겨오는 장치가 도는 기록이에요. 잘 돌았습니다. 새 글 7편을 찾아서 가져오고, 사이트를 다시 만들고, 배포까지 1분 7초 만에 끝냈어요.

 

문제는 저 287편 안에 협찬 리뷰 51편이 통째로 들어 있었다는 겁니다.

 

협찬은 이렇게 옵니다. 이어폰이나 키보드를 만드는 회사가 물건을 보내주고, 조건은 늘 하나예요. "네이버 블로그에 게재해 주세요." 그렇게 받은 글이 제 개인 사이트에 그대로 한 벌 더 올라가 있었던 겁니다. 그리고 앞으로 올릴 협찬 글도 매일 아침 9시에 자동으로 복사될 예정이었고요.

 

 

이게 2024년 2월부터 써온 네이버 블로그입니다. 290개 글이 있어요.

 

 

그중 협찬리뷰 칸이 51편입니다. 제 유일한 수입원이에요. 한 달에 400불쯤 됩니다. 애드포스트는 2년 넘게 모아 10만 원 남짓이니까, 사실상 이 51편이 제 사이트 운영비를 전부 대고 있는 셈이고요.

 

 

그리고 이건 사본이 쌓이고 있던 쪽입니다.

 

내려야 한다는 결론과 그 실행은 앞 편에서 다뤘어요. 이번 편은 그 다음 얘기입니다. 복사를 멈춘 뒤에, 두 채널 사이에 무엇을 남겨야 하는가.

 

그날 제외 목록에는 딱 한 줄이 있었습니다

 

이관 장치에는 "여긴 가져오지 마라"를 적는 파일이 하나 붙어 있습니다. 크론을 붙인 그날 아침 그 파일은 이렇게 생겼었어요.

 

{
  "_설명": "여기에 넣은 카테고리·글은 이관하지 않는다. 크론이 돌 때마다 걸러진다.",
  "categories": ["세상 흘러가는 이야기"],
  "logNos": []
}

 

한 줄뿐입니다. 협찬리뷰가 없어요.

 

그러니까 협찬 글은 막혔다가 뚫린 게 아니라, 애초에 막힌 적이 없었습니다. 저는 "제외 목록이 있으니 걸러지겠지" 하고 있었는데, 그 목록에 협찬을 적어 넣은 사람이 아무도 없었던 거예요.

 

이 방식의 성격이 여기서 드러납니다. 제외 목록은 적어 넣은 것만 막습니다. 뒤집어 말하면 기본값이 '가져옴'이에요. 안 적으면 자동으로 딸려 옵니다. 실수의 방향이 나쁜 쪽으로 열려 있는 구조인 거죠.

 

게다가 걸리는 조건도 까다로웠습니다. 파일 설명에 이렇게 적어뒀거든요.

 

이름은 네이버 카테고리와 글자 그대로 같아야 한다(공백·대소문자 포함).

 

띄어쓰기 하나 다르면 안 걸립니다. 안 걸려도 아무 소리가 안 나요. 그냥 조용히 가져옵니다.

 

여기에 하나가 더 있어요. 네이버에서 카테고리를 새로 만들면 그건 제외 목록에 없는 이름이잖아요. 새로 만드는 칸은 전부 '가져옴'으로 시작합니다. 제가 나중에 협찬 글을 위해 칸을 하나 더 만들면, 그 순간 다시 복사가 시작되는 겁니다.

 

목록을 늘리는 대신 장치를 껐습니다

 

제외 목록에 협찬리뷰 한 줄 적어 넣으면 되는 일이었어요. 5초면 끝납니다.

 

그런데 그렇게 안 했습니다.

 

이유를 문서에 적어뒀어요.

 

협찬은 "네이버 블로그에 게재한다"는 조건으로 받는 건데, 그 글이 다른 사이트에 자동 재게시되는 걸 협찬사가 문제 삼을 수 있다. 월 400불이 걸린 부분이다.

 

>

 

Victor House 카테고리 제외로 막아뒀지만, 카테고리를 잘못 고르는 한 번의 실수로 깨진다. 이관 자체를 멈추면 그 위험이 사라진다.

 

한 번의 실수로 깨지는 방어는 방어가 아니다는 게 결론이었습니다. 제외 목록은 제가 매번 정확하게 관리한다는 전제 위에 서 있는데, 저는 한 달만 지나면 왜 그렇게 해놨는지도 까먹는 사람이거든요. 그리고 실수했을 때 잃는 게 400불이면, 실수할 수 있는 구조를 그냥 두면 안 되는 거고요.

 

그래서 크론에서 줄을 지웠습니다. 이 줄이었어요.

 

0 9 * * * cd .../naver_import && python3 sync.py >> sync.log 2>&1

 

지우면서 원본은 crontab.이관중단전.txt 라는 파일로 남겨뒀습니다. 나중에 다시 켤 일이 생기면 한 줄이면 되게요.

 

crontab naver_import/crontab.이관중단전.txt

 

끄는 것보다 되돌리는 법을 적어두는 게 더 중요합니다. 되돌릴 수 있으면 끄는 결정이 가벼워지거든요. 이게 없으면 "혹시 나중에 필요하면?" 때문에 계속 켜두게 돼요.

 

딸려서 같이 멈춘 것도 있었습니다. 매일 아침 배포가 저 이관 안에 들어 있었거든요. 새 글이 있을 때만 배포하는 구조라, 이관을 끄니까 자동 배포도 같이 멎었습니다. 이건 필요한 기능이라 나중에 따로 살렸어요. 지금 크론에는 아침 9시에 배포하는 줄만 있고 이관 줄은 없습니다.

 

그런데 네이버는 제 사이트를 모르고 있었습니다

 

여기까지가 "복사를 막는" 얘기였고요. 그 다음은 "그럼 두 채널을 어떻게 잇나"인데, 이걸 하려다가 더 기본적인 게 빠져 있는 걸 발견했습니다.

 

7월 28일이었어요. 네이버 서치 어드바이저에 victor-house.com 이 등록조차 안 돼 있었습니다.

 

 

여기가 네이버에 "제 사이트 좀 봐주세요" 하고 신고하는 곳이에요. 구글의 서치 콘솔 같은 자리입니다.

 

왜 빠졌냐면, 사이트 소유를 증명하는 코드 한 줄 때문이었어요. 이런 게 페이지마다 박혀 있습니다.

 

<meta name="naver-site-verification" content="5ce183e..." />

 

이 코드는 사이트별로 따로 내줍니다. 그러니까 예전 주소(*.pages.dev)로 받은 코드는 새 도메인을 증명하지 못해요. 도메인을 사서 옮기면서 이걸 놓쳤습니다. 코드가 페이지에 멀쩡히 박혀 있으니까 저는 등록이 돼 있는 줄 알았고요.

 

코드에 이렇게 주석을 달아뒀습니다. 다음에 또 주소를 바꿀 때를 위해서요.

 

★ 주소를 바꾸면 검색엔진 인증 태그도 같이 갈아야 한다. 구글·네이버 다 사이트별로 코드를 따로 내주기 때문에, 옛 주소 코드는 새 주소를 인증하지 못한다.

 

그리고 이게 구글이었으면 조금 늦어도 그만이었을 텐데, 네이버는 성격이 다릅니다. 등록하고 사이트맵을 내지 않으면 사실상 안 긁어가요. 구글은 링크만 있으면 알아서 찾아오는데, 네이버는 문을 두드려야 옵니다.

 

그날 저녁 6시 1분에 코드를 재발급받아 갈아 끼웠고, 55분 뒤인 6시 56분에 RSS 피드를 하나 더 만들어 붙였습니다.

 

 

RSS 는 이렇게 생긴 파일이에요. 제목, 주소, 올린 시각, 첫 문단이 최신순으로 들어 있습니다.

 

 

이건 사이트맵이고요. 사이트에 있는 주소를 전부 적어둔 목록입니다.

 

둘이 비슷해 보이는데 역할이 달라요. 사이트맵은 "이런 주소들이 있다"는 목록이고, RSS 는 "방금 이 글이 올라왔다"는 알림에 가깝습니다. 서치 어드바이저에 사이트맵 내는 칸과 RSS 내는 칸이 따로 있어요. 매일 아침 새 글이 나가는 사이트라 알림 쪽이 값을 합니다.

 

한 달 반쯤 지난 지금 확인해보면 이렇습니다.

 

 

네이버 검색에 site:victor-house.com 을 넣은 결과예요. 첫 화면, 육아휴직 계산기, 카드 혜택, 기술사 스터디가 들어가 있습니다. 문을 두드리니까 오긴 오더라고요.

 

문이 한쪽에만 나 있었습니다

 

이제 두 채널을 잇는 얘기입니다. 원칙은 간단해요. 글은 안 옮기고 사람만 오가게 한다.

 

사이트에서 네이버로 가는 문은 이렇게 냈습니다.

 

 

왼쪽 방문자 수 아래에 있는 칸이에요. '네이버 블로그 · 글 원문 보러가기'. 도구를 보러 왔다가 리뷰가 궁금해진 사람이 이 문으로 나갑니다.

 

그런데 반대쪽을 확인해봤더니요.

 

이 글을 쓰면서 네이버에 올린 글 두 편을 열어서 victor-house.com 으로 가는 링크를 찾아봤습니다. 하나도 없었어요. 두 편 다 0개입니다.

 

이건 규칙을 어긴 게 아니라 그냥 안 한 겁니다. 그래서 더 안 보였어요. 어긴 거였으면 뭔가 깨졌을 텐데, 안 한 건 아무 일도 안 일어나거든요. "막았나"는 확인하는데 "이었나"는 확인을 안 하게 되더라고요.

 

지금 이게 왜 아까우냐면요. 협찬 리뷰를 검색해서 들어온 사람은 이어폰에 관심이 있는 사람이잖아요. 제 사이트에는 이어폰 주파수 곡선을 읽어주는 도구가 있고 키보드 스위치를 소리·무게·가격으로 고르는 도구가 있는데, 그 사람이 그게 있는 줄을 모릅니다. 문이 없으니까요.

 

앞으로 네이버에 쓰는 글에는 링크를 답니다. 전문을 옮기는 게 아니라 링크 한 줄이라 협찬 조건에도, 검색 중복에도 걸릴 게 없어요.

 

네이버로 보내는 건 전문이 아니라 요약과 링크입니다

 

그럼 네이버에는 뭘 올리느냐. 이건 파일에 규칙으로 적어놨습니다.

 

victor-house.com 에 올린 글을 네이버에서 알리는 요약·링크 글이 모이는 곳. 전문은 홈페이지에만 두고 네이버엔 간추린 글만 올린다 — 그래야 같은 글이 두 곳에 생기지 않는다.

 

그리고 같은 파일에 이 줄을 나란히 박아뒀어요.

 

★협찬 글은 여기 넣지 말 것 — 협찬은 네이버 본문 게재가 계약 조건이다.

 

한 파일 안에 방향이 반대인 규칙 두 개가 같이 있는 겁니다. 연재와 도구는 네이버에 간추려서 보내고, 협찬은 네이버에 통째로 둔다. 헷갈릴 것 같지만 기준은 하나예요. 원본이 어디냐.

 

 

지금 그 칸에는 두 편이 올라가 있습니다. 사이트 글을 그대로 복사한 게 아니라 네이버에서 읽히게 따로 쓴 글이에요.

 

붙여넣었더니 문단이 다 붙어버렸습니다

 

여기서 진짜로 한 번 깨졌습니다.

 

사이트에 쓴 글을 네이버로 옮기려고 화면을 긁어서 스마트에디터에 붙여넣었는데, 문단 사이가 전부 사라졌어요. 한 덩어리로 뭉쳐서 붙었습니다.

 

 

사이트에서는 이렇게 나옵니다. 문단이 한 칸씩 떨어져 있죠.

 

원인은 스마트에디터가 빈 줄을 삼키기 때문이었어요. 웹페이지에서 문단 사이 간격은 '빈 줄'이 아니라 '여백 설정'으로 만들어지는데, 복사할 때 넘어가는 건 글자뿐입니다. 여백은 안 따라가요. 그래서 붙여넣으면 문단이 서로 달라붙습니다.

 

고친 방법은 좀 웃깁니다. 문단 사이마다 눈에 거의 안 보이는 빈 문단을 하나씩 끼워 넣었어요. 사이트에서는 1픽셀에 투명이라 사실상 안 보이는데, 복사하면 같이 딸려가서 네이버에서 문단 간격으로 살아납니다.

 

여기서 한 번 더 걸린 게 있어요. 처음엔 그 빈 문단을 그냥 '숨김' 처리하려고 했거든요. 그런데 화면에서 숨긴 요소는 복사할 때 아예 빠집니다. 숨기면 네이버에 안 따라가니까 만든 의미가 없어져요. 그래서 '안 보이게'가 아니라 '아주 작게' 만들어야 했습니다. 코드에 이렇게 적어뒀습니다.

 

홈페이지에선 거의 안 보이되(1px·투명) 복사엔 포함돼 네이버에서 문단 간격으로 살아난다. display:none / visibility:hidden 은 복사에서 빠지므로 금지.

 

이런 건 코드를 아무리 들여다봐도 안 나옵니다. 한 번 붙여넣어 보고 눈으로 봐야 알아요. 화면에서는 완벽하게 맞는 글이었고, 규칙도 다 지켰고, 오류도 없었습니다. 결과만 틀렸어요.

 

 

고치고 나서 네이버에 올라간 글입니다. 문단이 제대로 떨어져 있고 사진도 사이에 잘 들어가 있어요.

 

사진은 반드시 네이버 서버에 올립니다

 

사진에도 규칙이 하나 있습니다. 네이버에 글을 올릴 때 사진은 반드시 네이버에 직접 올린다. 제 사이트에 있는 사진 주소를 가져다 쓰지 않아요.

 

이건 반대 방향에서 이미 당해봐서 압니다.

 

네이버 글을 사이트로 옮길 때, 처음엔 사진을 안 받고 네이버 주소를 그대로 두면 되지 않을까 생각했어요. 용량도 안 들고 편하잖아요. 안 됩니다. 코드에 이렇게 적혀 있어요.

 

이미지는 내려받은 것만 쓴다. 네이버 원본 주소는 핫링크가 막혀 있어 그대로 두면 전부 깨진 이미지로 보인다.

 

지금도 그런지 방금 확인해봤습니다. 같은 사진 주소를 부르면서 "어느 사이트에서 부르는 중인지"만 바꿔봤어요.

 

아무 데도 아님        → 200  image/png  367,669 바이트
victor-house.com     → 403  (거절)
blog.naver.com       → 200  image/png  367,669 바이트

 

제 사이트에서 부르면 403 으로 거절합니다. 같은 사진인데요. 그래서 이관할 때 사진 3,115장을 통째로 내려받아 제 쪽에 두고 씁니다. 9장은 네이버에서 이미 지워진 사진이라 못 받았고요.

 

그러니 반대로 보낼 때도 똑같이 해야 하는 겁니다. 네이버 글에 제 사이트 사진 주소를 걸어두면, 제가 사진 폴더 구조를 한 번만 바꿔도 네이버 글의 사진이 전부 깨집니다. 협찬 글이 그렇게 되면 그건 계약 파기에 가까워요.

 

그래서 옮기는 절차를 세 줄로 적어놨습니다.

 

1. victor-house 에 전문 + 사진 배포
2. 그 페이지를 복사해 네이버에 붙여넣기
3. 붙어온 사진은 지우고 내 폴더의 파일을 01 번부터 드래그

 

3번이 핵심이에요. 복사하면 사진도 딸려오는데, 그건 제 사이트 주소를 가리키고 있는 사진입니다. 그걸 지우고 파일을 직접 끌어다 놓아야 네이버 서버에 올라갑니다.

 

실제로 그렇게 됐는지도 확인할 수 있어요. 네이버에 올린 글의 사진 주소를 열어보면 이렇습니다.

 

https://postfiles.pstatic.net/.../01.png
https://postfiles.pstatic.net/.../02.jpg

 

postfiles.pstatic.net 은 네이버 사진 서버고, 끝의 01, 02 는 제 폴더에 있는 파일 이름 그대로예요. 제 컴퓨터의 01번 사진이 네이버 서버에 올라가 있다는 뜻입니다. 이제 제 사이트를 통째로 갈아엎어도 네이버 글은 안 깨집니다.

 

사람이 붙잡은 곳

 

이번 편에서 사람이 붙잡아야 했던 자리가 세 군데였습니다. 성격이 다 달라요.

 

하나. 값을 아는 사람만 "이건 끄는 게 맞다"고 말할 수 있습니다. 제외 목록에 한 줄 적어 넣는 건 규칙대로 맞는 처리예요. 논리적으로 흠이 없습니다. 그게 틀린 답이 되는 건 한 번 어긋났을 때 400불이 날아간다는 조건이 붙을 때뿐이고, 그 조건은 코드 어디에도 안 적혀 있습니다.

 

둘. 결과를 눈으로 본 사람만 문단이 붙은 걸 압니다. 붙여넣기가 깨진 건 오류가 아니었어요. 아무것도 실패하지 않았고, 아무 경고도 안 떴습니다. 다른 프로그램에 옮겨 붙였을 때 어떻게 보이는지는 직접 붙여넣어 보는 것 말고는 아는 방법이 없어요.

 

셋. 안 한 일은 열어봐야 압니다. 네이버 글에 사이트 링크가 하나도 없다는 건 이 글을 쓰면서 실제로 열어보고 알았습니다. 깨진 게 있으면 어디선가 티가 나는데, 안 한 건 조용해요. 자동화가 늘어날수록 "깨진 것"보다 "비어 있는 것"을 놓치게 되더라고요.

 

남는 이야기

 

앞 편의 규칙이 "각 채널의 원본을 서로 침범하지 않는다"였다면, 이번 편은 그 다음 줄입니다.

 

복사는 침범이고, 링크는 초대입니다.

 

전문을 옮기면 원본이 둘이 되고, 둘이 되면 검색엔진이 둘 중 하나를 고릅니다. 고르는 건 제가 아니고요. 그런데 링크는 아무것도 나누지 않으면서 사람만 건네줍니다. 원본은 하나로 남고, 읽는 사람은 두 곳을 오갈 수 있어요.

 

그래서 지금 두 채널 사이에 오가는 건 이것뿐입니다. 사이트 왼쪽의 배너 하나, 네이버 글에 붙일 링크 한 줄, 그리고 요약글. 글은 한 편도 안 넘어갑니다.

 

그리고 사진은 각자 자기 집에 있어야 하고요. 제 사진을 네이버가 안 받아주는 게 아니라, 서로의 사진을 서로가 안 받아준다는 게 이번에 배운 겁니다. 채널이 둘이면 사진도 두 벌 둬야 해요. 귀찮지만, 한쪽이 무너져도 다른 쪽이 멀쩡한 값이 그 귀찮음보다 큽니다.

 

#네이버블로그 #블로그협찬 #협찬리뷰 #체험단 #블로그수익화 #홈페이지만들기 #개인홈페이지 #victorhouse #중복콘텐츠 #원본콘텐츠 #검색최적화 #SEO #네이버서치어드바이저 #사이트맵 #RSS피드 #검색등록 #사이트인증 #핫링크 #스마트에디터 #네이버블로그이관 #크론탭 #자동화 #파이썬자동화 #클라우드플레어 #CloudflarePages #정적사이트 #AI코딩 #클로드 #개발자아닌사람 #사이드프로젝트

댓글

    로그인 없이 쓰는 대신, 등록한 댓글은 직접 지울 수 없습니다. 지워야 할 댓글은 옆의 신고를 눌러주세요.
    네이버 블로그글 원문 보러가기 →유튜브 쇼츠만드는 장면 20초로 보기 →
    관리자 Victor · 문의는 우상단 신고·제안으로 남겨주세요.
    글과 화면은 정적 파일로 만듭니다. 댓글과 조회수만 외부 데이터베이스에 저장합니다 — 개인정보처리방침

    오류 신고 · 제안

    관리자 Victor에게 전달됩니다