gatsby 플러그인으로 사이트맵을 생성했는데 구글 서치콘솔에서 확인하니 자꾸 인덱싱이 안됐습니다.

 

확인해보니 사이트맵에서는 루트 제외하고 경로 맨 끝 슬래시(/)가 없는 경로만 있었고, 따라서 사이트맵상 저 경로로 가면 슬래시가 있는 경로로 301 리다이렉트 되어 인덱싱이 되지 않았습니다.

 

이런 경우

  • (1) trailing slash를 전부 떼버린다
  • (2) trailing slash를 전부 붙여버린다
  • (3) trailing slash와 관계 없이 리다이렉트를 시키지 않는다

의 선택지가 있습니다. 저는 테마를 직접 만든게 아니고 갖다 썼기 때문에 (3)으로 하면 애로사항이 생길 수 있을 것 같아 그냥 전부 붙여버리는것으로 결정했습니다. (참고로 깃허브는 기본적으로 trailing slash가 없고, 직접 붙여서 들어가더라도 리다이렉트 시키지는 않습니다)

 

Gatsby 4.7.0부터 trailingSlash 옵션을 설정 가능한데 always, never, ignore 등을 설정할 수 있습니다.

// gatsby-config.js

module.exports = {
  trailingSlash: `always`,
}

이렇게 설정하면 됩니다

 

수정하면 url 끝에 전부 slash가 추가된 것을 확인할 수 있습니다.

반응형