문서 작업 가이드
URL 슬러그를 만들고 기존 링크 보존하기
Unicode·ASCII 경로 정책을 정하고 실제 경로 중복을 확인하며, 공개 URL을 리디렉션과 출시 증거와 함께 변경하는 실무 절차입니다.
작성 및 검수 SimpleWebUtils게시일: 검토일:
이 작업 흐름을 검증한 방법
가이드 입력을 바꾸지 않은 채 슬러그 생성기에서 다음 예제를 재현했습니다: “한글 제목을 유지하고 CMS에서 경로 확인하기”. 정상 절차는 “원문을 보존하고 비공개 초안 정보 제거하기”, “실제 시스템에서 소유권·중복·예약 동작 확인하기”; 경계 검토는 “지원하지 않는 ASCII 음역으로 제목 지우기”, “완벽한 슬러그 길이가 있다고 가정하기”로 분리해 결과를 확정했습니다.
slug는 한글 단어를 유지하고 URL 영문을 소문자로 정리해 CMS 경로와 redirect 검사용 2026-여름-여행-준비와-안전한-url-가이드를 만들었습니다.
문제 상황
제목을 슬러그로 바꾸는 일은 작아 보이지만 결과 문자열은 공개 식별자의 일부가 됩니다. 시스템마다 대소문자 구분, Unicode 정규화, 퍼센트 인코딩, 끝 슬래시, 예약어, 최대 바이트, 경로 충돌 규칙이 다릅니다. ASCII 음역은 엔진이 지원하지 않는 문자 체계를 삭제할 수 있고 읽기 쉬운 Unicode 경로는 퍼센트 인코딩 시 훨씬 길어질 수 있습니다. 더 중요한 점은 공개 후 슬러그 변경이 단순 텍스트 변환이 아니라는 것입니다. 해당 주소에는 외부 링크, 북마크, 검색 이력, 분석 차원, 캐시 응답, 언어 대체 링크, 구조화 데이터, 피드, 앱 참조가 연결되어 있을 수 있습니다. 여러 locale이 같은 콘텐츠 ID를 공유하는지 번역마다 별도 경로를 소유하는지에 따라서도 redirect, canonical, hreflang 설계가 달라집니다. 따라서 깔끔한 후보는 시작일 뿐입니다. 신뢰할 수 있는 작업 단위에는 정확한 원문, 고정한 변환 설정, 실제 플랫폼의 중복·예약 경로 조회, 스테이징 동작, 모든 기존 변형의 영구 리디렉션, canonical·내부 참조 갱신, 출시 후 수집·트래픽 증거, 롤백 경로가 모두 포함됩니다.
공식 출처와 표준
다음 공식 문서는 이 작업 흐름에서 다루는 형식과 보안 경계의 기준입니다. 도구별 실행 검증은 위에 별도로 기록합니다.
- URL Living Standard
WHATWG
이럴 때 사용하세요
- 새 글, 도움말, 상품 페이지, 릴리스 노트, 문서 섹션에 첫 공개 전 안정적인 경로가 필요할 때
- 다국어 제목을 Unicode로 읽기 쉽게 유지하거나 검토된 ASCII 전용 경로 정책을 적용할 때
- 팀이 CMS나 저장소에 구분자, 대소문자, camelCase, 정규화, 최대 길이 규칙을 고정할 때
- 기존 경로가 부정확하거나 중복되거나 일관되지 않아 URL 이전을 검토할 때
- 앱, 프록시, CDN, DB, 분석, sitemap, 검색 노출 전체에서 경로 규칙을 출시 전에 검증할 때
단계
- 1단계
플랫폼과 현재 경로 계약 조사하기
공개 origin, locale 구조, 라우터와 CMS 버전, 대소문자 구분, 끝 슬래시, Unicode 정규화, 퍼센트 인코딩, 예약 경로, DB 컬럼 제한, CDN·프록시 제한과 이미 공개된 URL인지 기록합니다. 변경 전에 현재 경로, canonical, hreflang, sitemap 항목, 리디렉션, 내부 링크, 구조화 데이터, 피드 참조, 최근의 정상 분석·검색 증거를 내보냅니다.
- 2단계
원문을 보존하고 비공개 초안 정보 제거하기
정확한 제목, 현재 슬러그, 전체 URL, 콘텐츠 ID, locale, 시각을 변경 기록에 남깁니다. 브라우저·클립보드·스크린샷·다운로드를 사용하기 전에 비공개 코드명, 고객 식별자, 토큰, 미공개 제품 정보를 제거합니다. 로컬 생성은 의도적인 업로드를 피하지만 기기 기록과 확장 프로그램을 통제하지는 않습니다.
- 3단계
명시적인 경로 정책 하나 선택하기
국제 문자를 Unicode로 유지할지 ASCII 음역을 요구할지 정하고 하이픈·밑줄, 소문자, 영문 camelCase 분리, 선택적 표시 길이를 고정합니다. 지원하지 않는 문자 체계가 사라진다면 Unicode를 우선하세요. ASCII 표기는 자동 번역이 아니라 화자나 브랜드 담당자가 확인해야 할 편집 콘텐츠로 취급합니다.
- 4단계
후보 하나를 생성하고 경고 검토하기
Slug Generator를 Manual 모드로 실행하고 @sindresorhus/slugify 3.0.0과 모든 옵션을 기록합니다. 제거된 구두점, 의미, 단어 경계, 미지원 문자 경고, 잘림, 표시 길이, 퍼센트 인코딩 길이를 확인합니다. 도구 한도는 10,000 UTF-8바이트, 20줄, 한 줄 5,000바이트지만 실제 경로 이름은 훨씬 짧고 페이지 주제에 집중해야 합니다.
- 5단계
실제 시스템에서 소유권·중복·예약 동작 확인하기
CMS, 라우터, DB, 저장소, 생성된 경로 manifest에서 정확한 후보와 정규화 변형을 조회합니다. 대문자·소문자, NFC·NFD Unicode, 디코딩·퍼센트 인코딩, 끝 슬래시, locale 접두사, 프레임워크·관리 경로 같은 예약 이름을 시험합니다. 스테이징 레코드를 생성·수정해 실제 충돌과 정규화 동작을 증명합니다.
- 6단계
공개 URL의 전체 이전 구성하기
기존 공개 변형을 하나의 새 canonical URL로 연결하는 플랫폼 맞춤 영구 리디렉션을 유지합니다. canonical·hreflang, 내부 링크, 탐색, sitemap, 구조화 데이터, Open Graph URL, 피드, API 참조, 캠페인 링크, 테스트, 분석 주석을 갱신합니다. 체인과 루프를 피하고 의도한 경우에만 query string을 보존하며 리디렉션 활성화 전에 기존 경로를 삭제하지 않습니다.
- 7단계
스테이징·출시·모니터링·롤백 증거 유지하기
스테이징에서 대표 query·locale 변형으로 이전·신규 URL을 요청해 상태, Location, 최종 canonical, robots, 본문, 캐시 헤더를 확인하고 내부 링크를 수집합니다. 출시 후 edge 검사를 반복하고 404, 리디렉션 오류, 수집·색인, 정상 유입, 전환을 이전·신규 경로별로 관찰합니다. 캐시·크롤러·연동·사용자가 안정될 때까지 이전 라우팅 규칙과 정확한 롤백 조건을 유지합니다.
예시
한글 제목을 유지하고 CMS에서 경로 확인하기
입력
2026 여름 여행 준비와 안전한 URL 가이드출력
2026-여름-여행-준비와-안전한-url-가이드흔한 실수
지원하지 않는 ASCII 음역으로 제목 지우기
비어 있거나 일부만 남은 ASCII 결과는 깔끔한 경로가 아니라 편집 실패입니다. Unicode를 유지하거나 검토된 표기를 사용하고 선택 근거를 기록하세요.
브라우저에서만 중복 확인하기
생성기에는 경로 목록이 없습니다. 정규화·대소문자 접기·locale·인코딩·끝 슬래시 변형까지 실제 저장소와 manifest에서 조회하세요.
완벽한 슬러그 길이가 있다고 가정하기
검색 성과를 보장하는 보편적 글자 수는 없습니다. 검증된 플랫폼·편집 규칙을 맞추는 용도로 길이를 사용하고 퍼센트 인코딩 바이트를 별도로 확인하세요.
리디렉션보다 새 canonical을 먼저 공개하기
새 경로를 먼저 공개하면 404와 참조 분리가 생길 수 있습니다. 새 경로, 이전 경로 리디렉션, 메타데이터, 링크, sitemap, 캐시 동작을 한 출시로 준비하세요.
한 번 수집됐다고 리디렉션 제거하기
기존 링크는 북마크, 문서, 앱, 드문 수집에 오랫동안 남습니다. 명시적 소유 정책에 따라 리디렉션을 유지하고 실제 이전 경로 요청을 관찰한 뒤에만 종료를 판단하세요.
자주 묻는 질문
Unicode 슬러그는 유효한 URL 경로인가요?
Unicode는 국제화 URL에 표현할 수 있고 네트워크 요청에서는 UTF-8 바이트를 퍼센트 인코딩하는 경우가 많습니다. 일반 문법에 맞는다는 사실만으로 프레임워크, 프록시, DB, CDN, 분석, 외부 연동이 같은 경로를 보존한다고 증명되지는 않으므로 전체 운영 경로를 시험하세요.
ASCII 음역이 SEO에 더 좋은가요?
보편적인 순위 보장은 없습니다. ASCII는 레거시 플랫폼이나 편집 규칙에 필요할 수 있고 Unicode는 독자에게 더 명확할 수 있습니다. 페이지를 정확히 나타내며 전체 시스템에서 일관되게 지원되는 형식을 고른 뒤 수집·색인·정상 사용자 증거로 평가하세요.
슬러그 중복은 어떻게 확인하나요?
실제 경로 저장소나 스테이징 빌드에서 조회하고 생성 동작을 시도하세요. 대소문자 접기, Unicode 정규화, locale 접두사, 디코딩·인코딩 형태, 예약어, alias, soft delete, 끝 슬래시 규칙을 포함해야 합니다.
영구 변경에는 어떤 리디렉션 상태를 써야 하나요?
플랫폼이 문서화하고 지원하는 영구 리디렉션 동작을 사용하며 일반적으로 301 또는 308을 검토합니다. method, cache, query string 동작을 시험하고 임시 이전과 구분하세요. 앱 계약을 확인하지 않고 이 가이드만으로 상태 코드를 결정하면 안 됩니다.
이전 슬러그를 sitemap에 남겨야 하나요?
일반적으로 sitemap에는 현재 canonical URL을 넣고 이전 URL은 계속 리디렉션합니다. 사이트의 색인 정책과 확인하고 오래된 내부 참조를 제거하며 이전 경로가 경쟁하는 200 페이지를 반환하지 않는지 검증하세요.
URL 변경 출시에 어떤 증거를 남겨야 하나요?
이전·신규 URL, 콘텐츠 ID·locale, 고정한 생성 설정, 중복·예약 경로 검사, 스테이징 status·Location 캡처, 최종 canonical·hreflang, 갱신한 링크·sitemap, 체인·루프 검사, 캐시 동작, 모니터링, 롤백 조건, 출시 후 수집·정상 트래픽 관찰을 포함하세요.