Next.js
Next.js에서 sitemap.xml과 RSS 피드를 관리하는 방법
운영 중에는 작은 이상 신호도 빨리 분리해서 봐야 한다. sitemap과 RSS의 상태를 정기적으로 확인하는 습관.
운영 중에는 작은 이상 신호도 빨리 분리해서 봐야 한다. 웹 렌더링 전체 흐름에서 원인을 좁혀야 한다.
핵심 질문 던져보기
웹 렌더링의 흐름을 먼저 끊어서 본다. 특히 빌드 로그이 애매하면 다른 부분을 고쳐도 결과가 바뀌지 않을 수 있다.
먼저 생각해야 할 점:
- 빌드 시에 sitemap이 생성되나?
- RSS 피드의 아이템 개수는 맞나?
- 각 URL의 lastmod 값은 최신인가?
먼저 제외할 원인들
웹 렌더링의 흐름을 먼저 끊어서 본다. 공개 URL이 애매하면 다른 부분을 고쳐도 결과가 바뀌지 않을 수 있다.
먼저 볼 값: 공개 URL
- 배포된 사이트에서 직접 /sitemap.xml 접근
- /feed.xml이나 RSS 엔드포인트 확인
- 같이 비교할 값: 정상일 때의 웹 렌더링 상태
canonical과 메타데이터 확인
정상 상태를 먼저 정해두는 게 좋다. 그래야 HTML head 결과가 맞는지 아닌지를 빠르게 판단할 수 있다.
curl -s https://example.com/sitemap.xml | head -20
curl -s https://example.com | grep -Ei 'title|description|canonical|og:|twitter:'
npm run build
예상되는 정상 상태
웹 렌더링 작업에서 정상 상태를 먼저 정해두는 게 좋다. 그래야 메타데이터 결과가 맞는지 아닌지를 빠르게 판단할 수 있다.
빌드 로그 확인
웹 렌더링 작업에서 정상 상태를 먼저 정해두는 게 좋다. 그래야 canonical 결과가 맞는지 아닌지를 빠르게 판단할 수 있다.
남겨둘 기록:
- 명령 출력
- 응답 코드
- 수정한 설정
검증 단계
- 원래 증상이 같은 조건에서 다시 나는지 확인한다.
- 로그나 응답에서 바뀐 부분을 한 줄로 설명한다.
- 공개 화면, 빌드 결과, 실제 요청 중 하나로 마지막 확인을 한다.
한 번에 여러 설정을 바꾸지 않는 것만으로도 원인 추적이 쉬워진다. 관련 기록을 남겨두면 다음 확인이 훨씬 빨라진다.