네이버 서치어드바이저에 워드프레스 rss 등록을 시도했을 때 “올바른 rss가 아닙니다.” 라는 오류가 발생하는 문제를 해결하고 rss 등록을 완료한 후기 입니다.
워드프레스 블로그의 네이버 검색 노출을 위해 네이버 웹마스터도구인 서치어드바이저에 도메인 등록을 하실텐데요. 이 때 필수로 등록하는 사이트맵과 rss 중 “올바른 rss가 아닙니다.” 오류가 발생하여 해결한 과정을 소개해 드립니다.
Table of Contents
올바른 rss가 아닙니다 오류 발생 원인
rss 등록 오류가 발생하는 원인을 구글링을 통해 다양하게 검색을 해보았는데 너무 많은 케이스가 있었습니다. 다양한 증상 중 오류가 발생한 문제를 해결할 때 결정적인 원인을 말씀드리면 rss 페이지 자체에 서치봇이 읽을 수 없는 “특수문자” 또는 “깨진문자”가 포함되었기 때문입니다.
다른 다양한 케이스들은 제외하고 제가 올바른 rss가 아닙니다 라는 오류를 해결한 과정만 간단하게 설명드리고 어떻게 문제점을 확인하는지 알려드릴게요.
워드프레스 rss 설정 수정하기
- 워드프레스 알림판에서 [설정] – [읽기] 메뉴로 이동하여 “가장 최근의 배급 피드 수” = 10 항목으로 설정
- “피드에서 각 글에 포함할 내용” = 요약 설정
- 하단에 있는 [변경사항 저장] 클릭
위 작업은 네이버 서치어드바이저가 rss 페이지를 읽기 쉽도록 rss에 포함된 내용을 간소화 해주기 위해서 하는 과정입니다.
모든 설정을 하고 rss가 오류없이 등록 되었다면 나중에 변경하셔도 됩니다.
내 워드프레스 rss 오류 원인 파악하기
서치봇이 어떻게 rss 페이지를 인식하는지 체크하기
내 워드프레스의 rss 페이지가 정상적으로 인식되는지 체크할 수 있는 서비스를 통해 내 도메인을 입력하여 확인할 수 있습니다.
위 버튼을 클릭하여 rss 체크 사이트로 이동 후 도메인을 입력하면 아래와 같이 오류내용이 나타납니다.
만약 저와 같이 동일한 화면이 나타난다면 네이버 서치어드바이저에서 rss 페이지를 인식하지 못하는 상태라고 할 수 있습니다.
최종적으로 문제를 해결하시고 다시 체크해 보시면 아래와 같은 화면을 보실 수 있습니다.
챗GPT 이용하여 내 rss 페이지의 문제 확인하기
- 인터넷 브라우저에 도메인을 입력하고 “/feed”를 추가하여 접속합니다.
- 전체선택(CTRL+A) – 복사(CTRL+C) => 챗GPT에 붙여넣기
- 위에서 체크했던 rss 체크 오류 내용 복사 => 챗GPT에 붙여넣기
- 프롬프트 입력 – “내 워드프레스 도메인의 rss 페이지를 네이버 서치어드바이저에서 인식하지 못하고 있어. 문제를 찾아줘”
위와 같이 간략한 프롬프트와 rss 페이지 내용 전체를 복사-붙여넣기 하여 챗GPT에게 제공하면 아래 화면과 같이 챗GPT가 어떠한 문제점이 있는지 확인 후 설명 해 줍니다.
아래 내용은 제 도메인의 문제점이었고, 현재 이 포스트를 보고 계시는 분들마다 모두 다른 답변이 나올 수 있으니 참고하시기 바랍니다.
제공해주신 피드 소스를 보면 XML 구조는 올바르게 보입니다. 하지만, 문제는 피드 내에 허용되지 않는 제어 문자가 포함되어 있다는 점입니다.
예를 들어,
<description>
태그 내에 아래와 같이 보이는<description>"[디스크립션 내용]"</description>
여기서 태그 시작 후 바로 보이는 “” 문자가 문제입니다. 이 문자는 ASCII 제어 문자(백스페이스, U+0008)로, XML 1.0 표준에서 허용하지 않는 문자입니다.
왜 문제가 되는가?
- XML 표준 위반:
XML 1.0에서는#x9
,#xA
,#xD
를 제외한 제어문자(예: U+0008)는 허용되지 않습니다.- 검증 도구 및 네이버 서치어드바이저의 엄격한 검사:
일부 도구나 서비스는 XML의 허용되지 않는 문자를 발견하면 이를 “올바르지 않은 피드”로 판단하여 등록을 거부할 수 있습니다.해결 방안
- 제어 문자 제거:
워드프레스 테마나 플러그인 중에서 피드 내용을 출력할 때 불필요한 제어 문자를 삽입하는 경우가 있습니다.
functions.php
또는 관련 플러그인에서 피드 관련 코드를 점검하고, 출력 버퍼에 불필요한 문자가 삽입되지 않도록 수정합니다.- 특히,
wp_head
나wp_footer
같은 액션 훅에서 의도치 않은 출력이 없는지 확인하세요.- 인코딩 및 필터링 적용:
피드를 출력하기 전에 불필요한 제어문자를 필터링하는 코드를 추가할 수 있습니다.
예를 들어,the_content
필터를 사용하여 출력 전에 제어 문자를 제거하는 방식입니다.요약
- 피드의 XML 구조는 정상이나,
<description>
태그 안에 포함된 백스페이스 문자(제어문자 U+0008) 때문에 XML 표준에 위배됩니다.- 이로 인해 네이버 서치어드바이저 및 일부 검증 도구에서 올바른 RSS 피드로 인식하지 못하는 것입니다.
해당 제어 문자를 제거하면 네이버 서치어드바이저에서도 정상적으로 피드를 인식할 수 있을 것입니다.
오류 문제 해결하기
저는 위와 같은 챗GPT의 답변을 받고 워드프레스 알림판에서 [설정] – [일반] 으로 이동하면 나타나는 “태그라인” 항목을 확인해보니 “[디스크립션 내용]” 과 같이 앞 뒤에 쌍따옴표가 추가된 것이 원인이었고, 해당 부분을 삭제하고 저장 후 다시 rss 추가를 시도해보니 정상적으로 등록되었습니다.
이 포스트에 설명드린 해결방법은 제가 겪은 케이스의 특정한 오류 원인을 해결하는 방법으로 위 방법을 통해 해결되지 않는다면 다른 방법들을 구글링 하셔서 해결해 보시기 바랍니다.
네이버 서치어드바이저 외에도 구글서치콘솔 에서도 내 도메인의 색인이 추가되지 않고 있다면 본문 글의 내용 중 챗GPT를 사용하여 문제를 찾아내는 방법을 활용해 보세요.