리다이렉트
redirect
뜻과 개념
요청한 주소를 다른 위치로 보내는 처리입니다.
어떻게 작동하나요?
리다이렉트는 한 주소로 들어온 요청을 다른 주소로 안내하는 처리입니다. 서버가 HTTP 상태 코드와 새 위치를 전달하는 방법이 대표적이며, HTML이나 JavaScript로 이동시키는 방법도 있습니다. 이동이 영구적인지 일시적인지에 따라 적절한 응답을 선택해야 합니다.
왜 알아야 하나요?
사이트 주소를 바꾸거나 콘텐츠를 통합할 때 기존 링크와 북마크를 사용하는 사람을 안내할 수 있습니다. 검색엔진에도 URL 변경을 해석하는 단서를 제공합니다. 단순히 새 화면이 열린다는 사실만으로 이전 작업이 정확히 끝났다고 보기는 어렵습니다.
실무에서 적용하는 방법
옛 주소와 관련 있는 새 주소를 대응표로 만듭니다. 영구 이전과 잠시 다른 안내를 보여주는 경우를 구분하고 서버 환경에 맞게 설정합니다. 목적지가 정상 응답을 반환하고 예상한 내용이 있는지 확인하세요.
검사할 때는 최종 화면뿐 아니라 중간 상태 코드와 Location을 확인합니다. 입력 양식이나 API 요청이라면 이동 중 요청 메서드와 본문이 어떻게 처리되는지도 검토해야 합니다. 내부 링크와 사이트맵은 가능하면 최종 주소로 갱신해 불필요한 이동을 줄입니다.
실무에서는 이렇게 봅니다
블로그 글을 새 카테고리로 옮겼다면 이전 주소에서 같은 글의 새 주소로 안내할 수 있습니다. 하지만 글이 삭제됐고 적절한 대체 내용이 없다면 메인으로 돌리는 것만으로 독자의 질문이 해결되지는 않습니다. 이전과 삭제를 구분해서 처리해야 합니다.
주의할 점
잘못된 정규식이나 도메인 설정은 사이트 전체를 엉뚱한 주소로 보내거나 반복 이동을 만들 수 있습니다. 작은 범위에서 검증한 뒤 확대하고 원래 설정을 보관하세요. 리다이렉트는 기존 순위가 그대로 유지된다는 보증이 아닙니다.
자주 묻는 질문
301과 302는 무엇이 다른가요?
대표적으로 301은 영구 이동, 302는 임시 이동 의도를 나타냅니다. 운영 목적과 요청 처리 방식에 맞는 코드를 선택해야 합니다.
JavaScript로 이동시켜도 되나요?
가능하지만 서버 응답으로 처리할 수 있는지 먼저 검토하는 편이 좋습니다. 스크립트 실행에 의존하면 환경에 따라 해석과 접근이 달라질 수 있습니다.