검색 이미지 지도 Play YouTube 뉴스 Gmail 드라이브 더보기 »
로그인

사이트 관리

Google이 권장하는 URL 구조 만들기

사이트의 URL 구조는 가능한 한 단순해야 합니다. 콘텐츠를 정리하여 URL을 논리적이고 이해하기 쉬운 방식으로 구성하시기 바랍니다. 가능하면 번호로 된 긴 ID보다는 읽기 쉬운 단어가 좋습니다. 예를 들어, 비행에 대한 정보를 검색하는 경우 http://ko.wikipedia.org/wiki/Aviation와 같은 URL은 더 쉽게 클릭하게 됩니다. 그에 비해 http://www.example.com/index.php?id_sezione=360&sid=3a5ebc944f41daa6f849f730f1와 같은 URL은 사용자를 혼란스럽게 합니다.

URL에 문장부호를 사용합니다. http://www.example.com/green-dress.html의 URL은 http://www.example.com/greendress.html보다 훨씬 더 효과적입니다. URL에 밑줄(_) 대신 하이픈(-)을 사용하는 것이 좋습니다.

여러 개의 매개변수를 포함하고 있는 URL과 같이 지나치게 복잡한 URL은 동일하거나 유사한 사이트 콘텐츠를 가리키는 URL을 불필요하게 많이 생성하므로 크롤러에 문제를 일으킬 수 있습니다. 그 결과 Googlebot이 필요 이상의 대역폭을 소비하거나 사이트에서 모든 콘텐츠에 대한 색인을 완전히 생성하지 못할 수 있습니다.

일반적인 원인

URL의 수가 불필요하게 많은 데에는 여러 가지 원인이 있을 수 있습니다.

  • 항목 모음 추가 필터링 많은 사이트에서 동일한 항목 또는 검색결과를 다른 버전의 보기로 제공하여 사용자가 '해변의 호텔'과 같이 지정된 기준을 사용하여 이 모음을 필터링할 수 있도록 합니다. 그런데 헬스 클럽이 있는 해변의 호텔과 같이 필터링 기준을 추가하면 사이트의 URL 수(데이터 보기)가 폭발적으로 증가합니다. Googlebot은 각 호텔 페이지로 이동할 수 있는 목록을 몇 개만 보면 되기 때문에 약간씩 다른 호텔 목록을 많이 만들면 목록이 중복될 수 있습니다. 예를 들면 다음과 같습니다.
    • 호텔 속성이 '특가' 호텔인 경우:
      http://www.example.com/hotel-search-results.jsp?Ne=292&N=461

    • 호텔 속성이 해변에 있는 '특가' 호텔인 경우:
      http://www.example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240

    • 호텔 속성이 해변에 있으며 헬스 클럽이 있는 '특가' 호텔인 경우:
      http://www.example.com/hotel-search-results.jsp?Ne=292&N=461+4294967240+4294967270

  • 문서의 동적 생성 문서를 동적으로 생성하면 카운터, 시간 기록 및 광고로 인해 약간의 변화가 발생할 수 있습니다.
  • 문제가 있는 URL 내 매개변수 예를 들어, 세션 ID는 엄청난 수의 중복과 URL을 만들 수 있습니다.
  • 정렬 매개변수일부 대형 쇼핑 사이트에서는 동일한 항목을 정렬할 수 있는 여러 방법을 제공하는 데, 이로 인해 URL의 수가 증가하기도 합니다. 예를 들면 다음과 같습니다.
    http://www.example.com/results?search_type=search_videos&search_query=tpb&search_sort=relevance&search_category=25
  • 추천 매개변수와 같이 관련성이 낮은 URL 내 매개변수예를 들면 다음과 같습니다.
    http://www.example.com/search/noheaders?click=6EE2BF1AF6A3D705D5561B7C3564D9C2&clickPage=OPD+Product+Page&cat=79
    http://www.example.com/discuss/showthread.php?referrerid=249406&threadid=535913
    http://www.example.com/products/products.asp?N=200063&Ne=500955&ref=foo%2Cbar&Cn=Accessories.
  • 캘린더 문제 동적으로 생성된 캘린더는 시작일 또는 종료일에 제한이 없는 미래의 날짜 및 과거의 날짜로 연결되는 링크를 생성할 수 있습니다. 예를 들면 다음과 같습니다.
    http://www.example.com/calendar.php?d=13&m=8&y=2011
    http://www.example.com/calendar/cgi?2008&month=jan
  • 깨어진 상대적인 링크깨어진 상대적인 링크로 인해 공간이 엄청나게 커지기도 합니다. 보통 이 문제는 반복된 경로 요소 때문에 발생합니다. 예를 들면 다음과 같습니다.
    http://www.example.com/index.shtml/discuss/category/school/061121/html/interview/category/health/070223/html/category/business/070302/html/category/community/070413/html/FAQ.htm
문제해결 도움말

URL 구조와 관련된 잠재적인 문제를 방지하려면 다음 조치를 취하시기 바랍니다.

  • robots.txt 파일을 사용하여 Googlebot이 문제가 있는 URL에 대한 액세스를 차단하도록 합니다. 일반적으로 검색결과를 생성하는 URL과 같은 동적 URL이나 캘린더와 같이 무한대의 공간을 만드는 URL을 차단하는 것이 좋습니다. robots.txt 파일에 정규식을 사용하면 많은 수의 URL을 손쉽게 차단할 수 있습니다.
  • 가능하면 URL에 세션 ID를 사용하지 말고 대신 쿠키를 사용합니다. 자세한 내용은 웹마스터 가이드라인을 참조하시기 바랍니다.
  • 가능하면 불필요한 매개변수를 삭제하여 URL의 길이를 줄입니다.
  • 사이트의 캘린더가 무한대인 경우 동적으로 생성되는 미래의 캘린더 페이지로 연결되는 링크에 nofollow 속성을 추가합니다.
  • 사이트에 상대적인 링크가 깨지지 않았는지 확인합니다.

업데이트됨 07/23/2011