참고: https://developer.mozilla.org/ko/docs/Web/HTTP/Redirections URL 리다이렉션과 포워딩은 페이지 같은 리소스를 웹 애플리케이션이 다른 URL에 위치한 상태에서 링크를 존속시키는 기술이다. 원칙 HTTP에서 리다이렉션은 요청에 대해 특수한 응답을 전달함으로써 실행된다. 리다이렉트는 300번대의 상태코드를 가진 응답으로 리다이렉트 응답을 수신한 브라우저는 제공된 새로운 URL을 사용하여 이 새로운 URL을 즉시 로드한다. Redirect 유형 영속적 리다이렉션 영원히 지속되는 리다이렉션. 원래의 URL이 더 이상 사용되지 않아야하며 새로운 URL을 더 선호한다. 301(Moved Permanently) 웹 사이트를 새롭게 띄워줄 때 사용. GET 메서드는..
Content Negotiation이란 동일한 URI에서 리소스의 서로 다른 버전을 지원하기 위해 사용되는 메커니즘이다. 사용자 에이전트가 사용자에게 제일 잘 맞는 것이 무엇인지를 명시할 수 있다. 원칙 클라이언트가 리소스를 내려받길 원하는 경우, 그것을 URL을 사용하여 요청한다. 서버는 리소스를 선택하기 위해 이런 URL을 사용하며 클라이언트에게 해당 리소스의 특정 프레젠테이션을 반환한다. 이때 프레젠테이션은 리소스가 제공하는 변형을 뜻한다. 리소스가 URL을 통해 호출되었을 때 특정 프레젠테이션을 선택하는 방법은 Content Negotiation에 의해 결정되며 클라이언트와 서버 간의 협상에는 다음 두 개의 메커니즘 중 하나를 통해 이뤄진다. 클라이언트가 보내는 특정 HTTP 헤더를 이용하는 방법..
참고: https://developer.mozilla.org/ko/docs/Web/HTTP/Compression 압축은 웹 사이트의 성능을 높여주는 중요한 방법 중 하나! 어떤 문서에 대해서는 70% 이상의 사이즈 축소로 대역폭 용량을 줄여주는 효과를 가져다준다. 실제로 웹 개발자들은 압축 매커니즘을 구현할 필요는 없다. 왜냐면 브라우저와 서버가 이미 잘 구현하고 있기 때문. 따라서 개발자는 서버가 잘 구성되어 있는지 확인하면 된다. 압축은 세 개의 서로 다른 계층에서 이뤄진다. 먼저 일부 파일 형식이 최적화된 특유의 방법으로 압축 그 뒤 HTTP 계층에서 일반적인 암호화가 일어난다. 리소스는 끝단 간에 압축되어 전송된다. 압축이 HTTP 커넥션의 두 노드 사이의 커넥션 계층에서 정의된다. 파일 포멧 압..
참고: https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching 네트워크를 통해 요청-응답을 수행하는 과정은 느리면서 비용이 많이 든다. 크기가 큰 응답은 클라이언트와 서버 사이에 많은 요청-응답 사이클이 필요하다. 때문에 브라우저가 처리할 수 있는 시기가 지연되고 방문자 또한 데이터 비용이 발생한다. 따라서 가져온 리소스를 캐싱하고 재사용하는 기능은 성능 최적화에 중요한 측면이다. 모든 브라우저에서는 HTTP 캐시 구현이 포함되어있다. 이를 사용하기 위해서는 HTTP 헤더에 캐시 관련 설정을 응답으로 제공하여 브라우저가 캐시할 시점과 기간을 설정하도록 알려주면 된다. 위 캡쳐와 ..