NGINX rewrite / Canonical / CSP 정리 작업 기록

2026.01.22 12:27

최근 구글 서치 콘솔에서 URL 관련 오류(Soft 404, 중복 페이지, 잘못된 canonical 등)가 발생해서, 서버 라우팅과 메타 구성을 정리했다. 이번 작업은 검색엔진이 동일 문서를 여러 URL로 인식하는 문제를 줄이고, 예쁜 URL을 안정적으로 index.php에 매핑하는 데 초점을 뒀다.


NGINX rewrite 정리

예쁜 URL이 들어왔을 때 PHP 라우터(index.php)가 정확한 파라미터를 받도록 rewrite를 정리했다.

기존방식

/?Article=65
/?Tag=MySQL
/?Category=Photo+%26+Video

변경후 구조

/{id} → Article={id} 로 변환되어 글 상세 페이지 진입
/tag/{name} → home.php에서 Tag={name} 필터로 글 리스트 출력
/Category/{name} → home.php에서 Category={name} 필터로 글 리스트 출력

특히 태그/카테고리 URL에서 +, %26(&) 같은 문자가 섞일 때 인코딩이 깨져서 글이 0건으로 나오는 케이스가 있었는데, rewrite 단계에서 불필요한 변환이 일어나지 않도록 처리 흐름을 명확히 했다.


canonical 정리

vew-source 기준으로 canonical이 항상 /(홈)으로 찍히는 경우가 있어, 검색엔진이 글/태그/카테고리 페이지를 전부 홈과 같은 문서로 인식할 위험이 있었다.

그래서 canonical을 “현재 문서의 대표 URL”로 정확히 출력하도록 수정했다.


CSP 중복 제거

페이지 렌더링 과정에서 CSP 관련 헤더/메타가 중복으로 출력되는 부분이 있어, 중복 출력을 제거했다.


기대 효과

서치 콘솔의 Soft 404 / 중복 페이지 / canonical 오류 감소

같은 콘텐츠가 여러 URL로 잡히는 문제 완화

크롤러가 예쁜 URL을 안정적으로 수집 가능

보안 헤더(CSP) 정책이 일관되게 유지

댓글 0

아직 댓글이 없습니다.