URL 구조
URL 구조는 사이트의 모든 URL을 사람과 검색엔진이 쉽게 이해할 수 있도록 간결하고 의미 있게, 일관된 계층으로 설계하는 방식입니다. 단어 구분에 하이픈을 쓰고 소문자·의미 있는 단어·논리적 폴더 계층을 사용하는 것이 핵심입니다.
- URL 구조는 사이트 전체 URL을 사람과 검색엔진이 이해하기 쉽게 설계하는 방식이며, 경로 한 조각인 URL 슬러그와 달리 전체 설계를 다룹니다.
- Google은 ID 번호 대신 읽을 수 있는 단어를 쓰고, 단어 구분에는 밑줄(_)이 아니라 하이픈(-)을 쓰도록 권장합니다.
- 소문자 통일·짧고 의미 있는 단어·논리적 폴더 계층·불필요한 파라미터 제거가 핵심 원칙입니다.
- 의미 없는 파라미터가 많으면 동일 콘텐츠를 가리키는 URL이 과도하게 늘어나 크롤링 효율과 색인이 나빠집니다.
- HTTPS는 2014년부터 가벼운 랭킹 요소이며, 날짜·세션 ID 같은 변동 요소는 URL에서 빼는 편이 유리합니다.
개요
URL 구조는 웹사이트의 모든 페이지 주소를 사람과 검색엔진이 한눈에 이해할 수 있도록 간결하고 의미 있게, 그리고 일관된 계층으로 설계하는 방식입니다. 좋은 URL 구조는 주소만 보고도 페이지가 어떤 내용인지, 사이트의 어느 위치에 있는지 짐작할 수 있게 합니다.
여기서 URL 슬러그(url-slug)는 URL을 이루는 하나의 경로 세그먼트, 즉 부분 요소입니다. URL 구조는 그 슬러그들을 어떤 단어로, 어떤 폴더 계층으로, 어떤 규칙(소문자·하이픈 등)으로 조합할지 정하는 전체 설계라는 점에서 범위가 다릅니다.
모범 사례
| 항목 | 권장 | 이유 |
|---|---|---|
| 단어 구분 | 하이픈(-) 사용, 밑줄(_) 금지 | Google이 하이픈을 단어 구분자로 인식해 개념 식별이 쉬움 |
| 대소문자 | 소문자로 통일 | 대소문자 혼용 시 중복 콘텐츠 문제가 생길 수 있음 |
| 단어 선택 | 읽을 수 있는 의미 있는 단어, 청중 언어 | 긴 ID 번호 대신 사람이 이해할 수 있는 주소 |
| 계층 | 논리적 폴더 구조, 과도한 깊이 지양 | 콘텐츠 관계를 사람·검색엔진이 파악하기 쉬움 |
| 파라미터 | 콘텐츠를 바꾸지 않는 불필요 파라미터 제거 | 중복 URL 양산으로 인한 크롤링·색인 낭비 방지 |
| 날짜·번호 | 가급적 제외 | 콘텐츠 갱신 시 주소가 어긋나거나 낡아 보임 |
| 프로토콜 | HTTPS | 2014년부터 가벼운 랭킹 요소 |
좋은 URL과 나쁜 URL
좋은 예
https://example.com/shoes/running/nike-pegasus
https://example.com/blog/url-structure-guide
나쁜 예
https://example.com/index.php?topic=42&area=3a5ebc944f41daa6
https://example.com/Category/New_Products/Item_00123?sid=abc비-ASCII 문자가 들어가는 경우 Google은 UTF-8 기반 퍼센트 인코딩을 권장하며, 청중의 언어로 된 단어(필요 시 음역)를 쓰도록 안내합니다. 파라미터를 쓸 때는 키-값을 등호(=)로, 추가 파라미터를 앰퍼샌드(&)로, 다중 값을 쉼표(,)로 연결하는 표준 표기를 권장합니다.
근거
Google Search Central의 URL 구조 모범사례 문서는 "하이픈(-)을 밑줄(_) 대신 사용해 단어를 구분하라"고 명시하며, 긴 ID 번호보다 읽을 수 있는 단어를 권장합니다. 예시로 /index.php?topic=42&area=3a5e... 대신 /wiki/Aviation 같은 형태를 제시합니다. 또한 과도하게 복잡한 URL은 동일·유사 콘텐츠를 가리키는 URL을 불필요하게 많이 만들어 Googlebot이 대역폭을 낭비하거나 색인을 끝내지 못하게 만들 수 있다고 경고합니다.
Ahrefs의 SEO 친화적 URL 가이드는 항상 소문자를 쓰고, 공백을 하이픈으로 바꾸며, 주요 키워드를 기반으로 짧고 읽기 쉬운 슬러그를 만들 것을 권장합니다. 더불어 계층 표현에는 하위 폴더를 쓰되 과도한 깊이를 피하고, 날짜·URL 파라미터·서브도메인 남용을 지양하며, HTTPS를 사용하라고 안내합니다(HTTPS는 2014년부터 랭킹 요소).
실행 체크리스트
- 모든 URL을 소문자로 통일하고 단어는 하이픈(-)으로 구분합니다.
- 긴 ID·세션 ID·불필요한 추적 파라미터를 주소에서 제거합니다.
- 읽을 수 있는 의미 있는 단어를, 청중의 언어로 사용합니다.
- 폴더 계층을 콘텐츠 구조에 맞춰 논리적으로 구성하고 과도한 깊이를 피합니다.
- 에버그린 콘텐츠 URL에서는 날짜를 빼서 주소가 오래 유지되게 합니다.
- 전 사이트를 HTTPS로 제공하고, 동일 콘텐츠의 중복 URL을 canonical·리다이렉트로 정리합니다.
- 비-ASCII 문자는 UTF-8 퍼센트 인코딩으로 처리합니다.