2011-01-13 2 views
3

"찾을 수있는 자원은 Location 필드에 지정된 프록시를 통해 액세스해야합니다. 위치 필드는 프록시의 URI를 제공합니다. 수신자는 프록시를 통해이 단일 요청을 반복해야합니다 .305 응답은 반드시 있어야합니다 오리진 서버에 의해 생성됩니다. "305 HTTP 상태 코드 란 무엇입니까? 올바르게 사용하는 방법?

올바르게 사용하는 방법은 무엇입니까? 주어진 URL에 프록시가 없다면 어떻게 될까요?

+0

어떤 상황에서이 문제가 발생합니까? –

답변

6

리디렉션은 클라이언트가 다른 곳에서 콘텐츠를 가져 오도록 클라이언트에게 말하고 싶을 때 사용합니다. 주어진 URI는 구어체의 구어체에서 '프록시'일 필요는 없습니다. 그것은 원래 요청한 콘텐츠가있는 또 다른 장소입니다.

부하 분산에 사람들이 사용합니다. 나는 클라이언트가 제대로 구현 모르겠어요, 그래서 당신은 단지 재 지정하려는 경우, 당신은 HTTP의 RFC에 설명 된대로 302

편집

의도 된 사용 예로가는 안전 할 것 : 캐싱 프록시가 있고 그 내용이 실제 서버 (원본 서버)에서 온다고 가정 해보십시오. 누군가가 어떻게해서 실제 서버에 직접 액세스했는지를 305로 보내면 대신 프록시에서 가져 오기를 원합니다.

+0

305와 305의 차이점은 무엇입니까? 302? "받는 사람은 프록시를 통해이 단일 요청을 반복해야합니다." – Sarah

+0

브라우저가 어느 쪽이든 본다면 기본적으로 같은 것을 할 것이다. 302가 더 다양한 브라우저에서 구현 될 가능성이 높지만. 302가 다소 납치되어 더 많은 3xx 코드가 추가되었으므로 RFC 문서에서 자세한 정보를 확인하십시오. – profitphp

+0

"받는 사람은 프록시를 통해이 단일 요청을 반복해야합니다." 프록시 부분에 매달려 있습니다. 오징어 같은 프록시가 아닙니다. 콘텐츠가있는 또 다른 장소입니다. 그리고 302와 마찬가지로 클라이언트는 대신 헤더의 위치 필드에 지정된 URI에서 방금 요청한 URI 대신 302/305에 요청한 콘텐츠를 요청해야합니다. – profitphp

3

드물게 사용되는 코드는 통신 체인에 클라이언트가 프록시 인 경우 서버에서 보낼 수 있습니까? 어쩌면 아닙니다,하지만 프록시를 찾는 것은 어렵습니다. 서버 바로 뒤에서 역방향 프록시가있는 경우이 프록시는 305 오류를 받아들이고 HTTP 클라이언트에 전달합니다.

일반적으로 보안 프록시 액세스를 사용해야하는 '직접 액세스'를 리디렉션하기 위해 수행되며 직접 액세스 할 수있는 이유는 무엇입니까? 이전에는 보안 사슬에서 뭔가 잘못되었습니다.

그럼 누가 서버 측에서 305를 사용합니까? 305 응답을 생성하려고하지 않으 셨길 바랍니다.

HTTP 클라이언트 인 경우 302와 같이 리디렉션되는 것이므로 프록시와 통신하고 있는지 여부는 알 필요가 없습니다 (때로는 알기가 어려울 수 있음).