URL이 http://domain/image/⟨uuid⟩/42x42/some_name.png
인 URL이 있습니다. 웹 서버 (nginx)는 파일 /some/path/image/⟨uuid⟩/thumbnail_42x42.png
을 찾도록 구성되어 있고, 존재하지 않으면 URL을 백엔드 (mod_wsgi를 통해 장고)로 전송 한 다음 축소판을 생성합니다. 그런 다음 백엔드는 클라이언트가 요청한 동일한 URL로 302 리디렉션을 내보내고 두 번째 요청시 서버가 미리보기 이미지 파일을 인식하여 직접 보냅니다.동일한 URL로 리디렉션하는 것이 안전합니까?
질문은 모든 브라우저에서 사용할 수 있습니까? 지금까지 테스트는 아무런 문제도 보이지 않았지만, 모든 사용자 에이전트가 이것을 의도 한대로 해석 할 수 있습니까?
업데이트 : 의도를 명확히하겠습니다. 현재 다음과 같이 작동합니다.
- 클라이언트가 이미지의 축소판을 요청합니다.
- 서버에서 파일이 존재하지 않는다고 판단하여 요청을 백엔드로 전달합니다.
- 백엔드 썸네일을 생성하고 현재 및 이후의 클라이언트 서버 공유를 새로 생성 된 파일을시키는, 302
- 백엔드 출시하는 모든 리소스를 반환합니다.
백엔드가 새로 만든 이미지는 두 가지 이유 나쁘다 역할을 갖는 만들어야합니다 동일한 데이터를 봉사
- 두 가지 방법;
- 서버가 정적 컨텐츠를 제공하는 것이 훨씬 좋습니다. 클라이언트의 링크가 매우 느린 경우에는 어떻게해야합니까? 백엔드는 특히 빠르지도 메모리 효율도 뛰어나지 않으며 클라이언트에게 숟가락 급지를하는 동안 낭비가 될 수 있으므로 메모리에 보관해야합니다.
그래서 최소한의 시간 동안 백엔드 작업을 유지합니다.
업데이트 2 : 많은 RFC 브라우저 나 많은 경험을 가진 사람의 RFC 참조 나 의견에 감사드립니다. 모든 긍정 응답은 즐겁지 만 다소 근거가 없습니다.