inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모든 개발자를 위한 HTTP 웹 기본 지식

3xx - 리다이렉션1

영구적/일시적 리다이렉션은 논리적인 의미 구분인가요?

383

김동현

작성한 질문수 38

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
영구적 리다이렉션과 일시적 리다이렉션이 의미에 따라 나눠지는것 말고 따로 기술적인 차이가 있는 지 궁금합니다. 관련하여 구체적인 질문 2개가 있습니다.

 

  1. 두 리다이렉션 모두 요청을 보낸 후 응답의 Location 헤더를 참고하여 URI 를 이동하게 되는데 그럼 두 리다이렉션의 기능은 동일하지만, 단순히 내가 처음에 보냈던 URI 가 유효한 주소인지, 그렇지 않은지에 따라, 즉 의미에 따라 나눠진건가요?

  2. 일시적인 리다이렉션 설명에서 리소스의 URI가 일시적으로 변경된 것이기 때문에 검색 엔진 등에서 URL 을 변경하면 안된다고 하셨는데, 응답의 location 을 참고해 다른 URL 로 요청을 보내는것은 이와 다른 의미인가요?(예시의 /order -> /order-result/19 와 같은) 그렇다면 검색 엔진에서 URI을 변경하면 안된다는게 무슨 뜻인지 궁금합니다.

네트워크

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

김동현님께서 영구적 리다이렉션과 일시적 리다이렉션에 대해 구분에 관하여 궁금해하시는군요. 이에 대한 답변은 다음과 같습니다:

  1. 영구적(Permanent) 리다이렉션과 일시적(Temporary) 리다이렉션의 차이점:

    • 영구적 리다이렉션 (HTTP 상태 코드 301, 308)은 해당 리소스의 URI가 영구적으로 변경되었음을 나타냅니다. 즉, 이후에도 계속 새로운 URI를 사용할 것임을 의미합니다. 이는 검색 엔진이나 캐싱 메커니즘에게 중요한 신호로 작용하여, 검색 엔진은 새 URL을 색인화하고, 브라우저는 해당 URL에 대한 요청을 캐시할 수 있습니다.
    • 일시적 리다이렉션 (HTTP 상태 코드 302, 303, 307, 307)은 리소스의 URI가 일시적으로 변경되었음을 나타냅니다. 이는 임시이며, 원래 URI가 여전히 유효함을 의미합니다. 이 경우, 사용자 에이전트(예: 웹 브라우저)는 새 URI로 요청을 재전송하지만, 검색 엔진은 원래의 URL을 유지합니다.
  2. ‘검색 엔진에서 URI을 변경하면 안 된다’는 의미:

    • 일시적 리다이렉션의 경우, 검색 엔진(bot)이 웹 페이지를 크롤링할 때 원래의 URI를 보존해야 하며, 일시적으로 리다이렉션된 새로운 URI로의 변경을 반영하지 않아야 합니다. 이는 원래의 주소가 여전히 유효하고 추후에 원래 주소가 사용될 것임을 의미하므로, 검색 엔진 결과 등에서는 원래의 URI를 계속해서 사용해야 합니다.

위의 내용에 대해 보다 깊은 이해를 돕고자 몇 가지 기존 답변을 제시해 드리겠습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

캐시무효화시 그냥 no-store만 넣어되지 않나요?

0

69

2

API의 헤더와 바디에 대한 문의 입니다.

0

70

2

수정폼과 수정

0

66

1

쿠키에 대해 질문드려요!

0

88

2

서버에서 캐시 검증 헤더를 직접 처리해야 하나요?

0

86

1

http api get, post 멱등

0

40

1

컬렉션의 개념

0

49

1

시작라인에 들어가는 요청 대상 경로는 상대 경로 아닌가요?

0

53

1

PATCH 는 PUT처럼 멱등이여야 하지 않나요?

0

80

1

리소스 질문드립니다

0

56

1

IP 패킷 질문입니다.

0

58

1

html from, http api

0

74

2

브라우저 캐시가 60초 유효하다는게 무슨 뜻일까요

0

120

1

stateless 무상태 예제가 생각났는데. 저가 생각 한게 맞는지 궁금합니다.

0

98

1

URI 및 URL 질문, 왜 자바(스프링)에서는 이렇게 나누었는지?

0

140

1

host와 port

0

106

1

tcp/ip는 연결을 유지? 아니면 유지하지 않음?

0

144

1

다음 강의 커리큘럼 질문!!

0

130

2

캐시 개념에 대해서 설명하시지는 않으시는건가요?

0

113

1

클라이언트가 patch, delete 요청 시 알아야 하는 url

0

90

1

html form 형태 전송시 new, edit 등 컨트롤 리소스를 사용하는 이유

0

168

2

비 연결성(connectionless) 강의에서 질문입니다~

0

139

1

PATCH를 사용하지 못할 때 왜 POST?

0

161

2

협상과 우선순위3 질문드립니다.

1

130

1