This page contains the following errors :
error on line 2 at column 6: XML declaration allowed only at the start of the document
below is a rendering of the page up to the first error.
위와 같은 에러 메시지는 워드프레스로 웹사이트를 운영중에 사이트맵을 활성화하고 난 후 사이트맵 주소로 접속할 때 나타나는 에러 메시지이다. 일반적으로 워드프레스 사용자라면 사이트맵을 XML Sitemap & Google News 또는 Yoast SEO 플러그인을 통해서 생성할 것이다. 그런데 위의 플러그인으로 사이트맵을 생성했을 때 위와 같은 메시지가 나타난다면 다음과 같은 오류를 예측해 볼 수 있으며 각각의 오류들을 수정함으로 에러 메시지를 해결할 수 있다.
1. function.php 또는 wp-config.php 공백문제
워드프레스로 웹사이트를 만들다 보면 부득이하게 function.php 또는 wp-config.php의 파일을 수정하는 일이 발생된다. 일반적으로 이러한 파일의 수정은 특정 기능에 대한 명령어를 입력하는 것인데 보통 입력어들을 넣을 때 습관적으로 줄바꿈을 하거나 불필요하게 줄간격을 추가하는 경우가 있다.
즉 위의 에러코드는 이 두개의 파일 속 불필요한 여백이 있을 때 발생한다. '<?php' 로 시작하는 구문이나 '?>'로 끝나는 부분에 불필요한 줄 여백이 있다면 그것을 삭제해줌으로 간단하게 해결 할 수 있다.
일반적으로 function.php 파일은 워드프레스 관리자 페이지 메뉴항목중 "외관" > "테마편집기"에서 수정이 가능하며, wp-config.php의 경우는 FTP로 접속하여 워드프레스 설치폴더에서 다운받아 수정 후 재 업로드 해주면 된다.
2. 특정 플러그인의 함수 문제
이 경우도 1항과 비슷하지만, 테마를 다루는 function.php 도 아니고 워드프레스를 다루는 wp-config.php 파일의 문제가 아니라 플러그인의 함수에서 발생되는 것이다. 만약 1항의 방법대로 해도 문제가 해결되지 않는다면, 먼저 설치된 모든 플러그인들을 다 활성화 해제를 한다.
그리고 사이트맵을 생성한 XML Sitemap & Google News 또는 Yoast SEO 플러그인만 활성화하고, 사이트맵 주소로 들어가본다. 만약 위의 에러코드가 나오지 않는다면, 이것은 플러그인의 문제이다.
이제 플러그인을 하나 실행 후 사이트맥 주소로 접속해보는 과정을 반복해 보자. 과정을 반복하다가 특정 플러그인을 실행 후 위의 에러 메시지가 다시 나온다면 이것은 해당 플러그인의 문제임으로 그 플러그인의 php 파일들의 함수를 체크해야 한다.
방법은 1항과 동일하다. 플러그인 속 php 파일들을 편집기로 열어보고 특정 함수에 불필요한 여백이 있다면 모두 삭제해 주고 저장 후 다시 업로드하여 실행하면 대부분 문제가 해결된다.
3. 알수 없는 피드 충돌 문제
사이트맵의 경우는 RSS와 연관이 깊기 때문에 RSS의 문제가 있다면 사이트맵이 정상적으로 작동되지 않을 수 있다. 이러한 경우를 해결해주는 또다른 플러그인이 있다. 그것은 Fix My Feed RSS Repair 이라는 플러그인이다.
워드프레스 플러그인 새로추가해서 위의 플러그인을 검색한 후 실행시켜주면 RSS 오류들을 자동으로 수정해준다.
결론,
사이트맵은 자신의 웹사이트의 글을 포털이나 검색엔진이 잘 수집할 수 있도록 정보를 제공해주는 역할을 한다. 따라서 사이트맵을 제출하지 않으면 검색엔진이 자신의 사이트 속 글들을 수집하는데 어려움이 있을 수 있기 때문에 위와 같은 에러 메시지를 그냥 무심코 지나쳐서는 안된다.
필자의 경우는 2번에 해당하였고, 필자는 공개된 플러그인의 특정 함수를 스스로 수정하는 과정에서 발생한 오류였다. 사이트맵을 생성하기 전까지는 오류를 감지할 수 없어서 플러그인 수정을 오류없이 수행했다고 생각했지만, 이것인 사이트맵을 생성하는데 문제를 발생하여 모든 플러그인들을 비활성화한 후 하나하나 활성화 하면서 문제 있는 플러그인을 찾을 수 있었다.
댓글