슬래시를 붙이거나 붙이지 않거나

2020년 4월 21일 수요일

많은 웹마스터분들께서 궁금해하신 질문입니다. 그럼 답변을 드려 볼까요! 일반적으로 후행 슬래시가 표시되는 URL은 디렉터리를 나타내며, 슬래시가 없는 URL은 파일을 나타냅니다.

https://example.com/foo/ (with trailing slash, conventionally a directory)
https://example.com/foo (without trailing slash, conventionally a file)

하지만 반드시 그런 것은 아닙니다. Google에서는 위의 URL이 파일이건 디렉터리건 또는 후행 슬래시가 있건 없건 관계없이 별개의 항목으로 동등하게 취급합니다.

슬래시 유무에 따라 콘텐츠가 달라지면 Google에 있어서는 괜찮지만, 사용자에게 있어서는 바람직하지 못한 경우가 많습니다.

검색엔진이라는 기술적인 관점에서 보았을 때는 이 두 URL 버전이 서로 다른 콘텐츠를 포함하는 것이 허용됩니다. 하지만 사용자에게는 이러한 구성이 매우 혼란스러울 수 있습니다. www.google.com/webmasterswww.google.com/webmasters/에서 서로 별개의 두 가지 환경이 표시되었다고 생각해 보세요.

따라서 후행 슬래시가 있는 URL과 후행 슬래시가 없는 URL이 동일한 콘텐츠를 게재하는 경우도 많습니다. 사이트가 디렉터리 구조로 구성되어 있는 경우 이럴 때가 많습니다.

https://example.com/parent-directory/child-directory/

사이트 구성 및 옵션

이 패턴과 일치하는 사이트 URL 중 하나가 다른 URL로 리디렉션되는지에 관해 간단히 확인할 수 있습니다.

  1. https://example.com/foo/
    (후행 슬래시 있음)
  2. https://example.com/foo
    (후행 슬래시 없음)
  • 하나의 버전만 반환되는 것이(다른 버전도 리디렉션될 수 있음) 바람직합니다. 이러한 동작은 유용합니다. 중복 콘텐츠를 줄일 수 있기 때문입니다. 후행 슬래시 URL로 리디렉션되는 특정한 경우 리디렉션이 301 또는 302건 관계없이 Google 검색결과에 URL에 200 응답 코드(대부분 후행 슬래시 URL)가 포함된 버전의 URL이 표시될 가능성이 높습니다.
  • 슬래시가 있는 버전과 후행 슬래시가 없는 버전에 모두 동일한 콘텐츠가 포함되어 있고 모든 버전이 200을 반환하는 경우 다음과 같은 조치를 취할 수 있습니다.
    • 이 동작을 변경하여(자세한 내용은 아래 참고) 중복 콘텐츠를 줄이고 크롤링 효율성을 개선할 수 있습니다.
    • 그대로 둡니다. 중복 콘텐츠가 포함되어 있는 사이트는 많습니다. 웹마스터와 사용자 대신 Google의 색인 생성 과정에서 이러한 케이스가 처리되는 경우가 많습니다. 최적의 조치는 아니지만 적당하고 괜찮은 조치입니다. ^^
    • 특히 루트 URL의 경우 https://example.comhttps://example.com/와 동일하며 이소룡이 살아와도 리디렉션할 수 없으므로 안심하시기 바랍니다.

하나의 URL 버전만 게재하기 위한 단계

사이트가 다음의 두 URL에 중복 콘텐츠를 제공하는 경우

https://example.com/foo/
https://example.com/foo

두 URL 모두 200를 반환하며(두 URL 모두 리디렉션이 없거나 rel="canonical" 링크 태그를 포함하지 않음) 이 상황을 바꾸고 싶으신가요?

  1. 선호하는 버전의 URL을 선택하세요. 사이트에서 디렉터리 구조를 사용한다면 디렉터리 URL에 후행 슬래시(예: example.com/directory 대신 example.com/directory/)를 사용하는 것이 좀 더 일반적이긴 하지만, 둘 중 어떤 것이든 고를 수 있습니다.
  2. 선호하는 버전을 일관되게 사용하고, 내부 링크에 사용하세요. 사이트맵이 있다면 선호하는 버전의 URL을 표시하고, 중복 URL은 넣지 않는 것이 좋습니다.
  3. 301 리디렉션을 사용해 중복 URL에서 기본 버전으로 리디렉션하세요. 그럴 수 없다면 rel="canonical" 링크 태그를 사용하는 것도 좋습니다. rel="canonical"은 Google의 색인 생성 과정 및 다른 주요 검색엔진에서 301과 유사하게 작동합니다.
  4. 웹마스터 도구Fetch As Googlebot을 통해 301 구성을 테스트해 보고 https://example.com/foo/https://example.com/foo라는 두 개의 URL이 예상대로 작동하는지 확인하세요. 기본 버전이 200 상태 코드를 반환해야 하며 중복 URL은 기본 URL로 301 리디렉션되어야 합니다.
  5. 웹마스터 도구에서 크롤링 오류를 확인하고 가능한 경우 웹 서버 로그를 통해 301 리디렉션이 구현되었는지 빠르게 확인합니다.
  6. 들리시나요? 통장이 두둑해지는 소리가? 농담입니다. 하지만 효율적으로 서버를 구성하면 따사로운 햇살을 받을 때처럼 기분이 좋습니다. 사이트가 더욱 효과적으로 최적화되어 있음을 알고 있는 것만으로도 몸도 마음도 따뜻해지니까요.