개발 slecs

사이트맵에 잘못된 도메인 URL이 박혀 있던 문제 수정

목차

Astro 설정 파일에서 발견한 실수를 고쳤다. astro.config.mjssite 옵션이 잘못 설정되어 있어서 sitemap이 잘못된 도메인 URL을 생성하고 있었는데, 이번에 올바른 도메인으로 교정했다.

무엇이 잘못되었나

사이트맵은 SEO 측면에서 검색 엔진이 사이트 구조를 파악하는 데 매우 중요한 파일이다. Astro는 기본적으로 astro.config.mjssite 설정값을 참고해 동적으로 사이트맵을 생성한다. 문제는 이 설정이 처음에 잘못된 도메인으로 해석되고 있었다는 점이다. 결과적으로 sitemap.xml이 생성될 때 실제 서비스하는 도메인이 아닌 다른 도메인의 URL들이 들어가 버렸다. 이것은 검색 엔진이 크롤링할 때 실제 서비스 URL이 아닌 잘못된 주소를 색인화할 위험으로 이어진다.

멀티 도메인 환경에서의 설정 헷갈림

이 프로젝트는 여러 사이트가 같은 코드베이스에서 구동되는 구조였다. 개발 초기에는 여러 사이트를 관리하다 보니 site 옵션이 어느 도메인을 가리켜야 하는지에 대한 명확한 구분이 없었고, 결국 의도하지 않은 도메인(kpopdex 관련 URL)으로 설정된 채 유지되고 있었던 것 같다. 이런 상황은 다음과 같은 경우에 자주 발생한다:

  • 초기에 임시로 설정한 값을 그대로 유지한 채 이동
  • 환경 변수나 동적 설정으로 바꾸지 않고 하드코딩된 상태
  • PR 리뷰 시 설정 파일의 중요도를 놓치는 경우
  • 도메인 변경 후 설정까지 함께 검토하지 않은 경우

수정의 의의

// Before (의도하지 않은 도메인)
site: 'https://example-wrong-domain.com/',

// After (올바른 도메인)
site: 'https://vtuberprofile.com/',

이 한 줄의 변경이 미치는 파급력은 생각보다 크다. 사이트맵이 올바르게 생성되면:

  • 검색 엔진 크롤러가 정확한 URL들을 색인화한다
  • robots.txt와 함께 크롤 효율성이 향상된다
  • 사이트 구조가 명확하게 전달된다
  • SEO 관점에서 도메인 신뢰도가 저해되지 않는다

회고: 설정 검증의 중요성

이런 종류의 버그는 코드 리뷰 단계에서 찾기 쉽지 않은 편이다. 설정 파일은 "그냥 그런 거겠지" 하고 넘어가기 쉽기 때문이다. 특히 멀티 사이트 환경이라면 각 사이트별로 설정이 정말 맞는지 명시적으로 검증하는 단계가 필요했다.

다음부터는 도메인 변경이나 환경 전환 시에 단순히 코드만 확인할 게 아니라 설정 파일의 도메인 관련 항목들(site, baseUrl 등)을 체크리스트에 넣고 확인하는 습관을 들여야겠다. 개발 중에는 로컬 sitemap.xml 파일을 직접 열어보거나, 생성된 사이트맵의 URL들이 실제 서비스 도메인과 일치하는지 간단한 테스트를 추가하는 것도 좋은 방법이 될 것 같다.


🛒 이 글과 어울리는 추천 상품

*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.

댓글 0

첫 댓글 달아줘.