달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

이 글의 카테코리가 Cloud Services가 맞는지 모르겠네요. CDN도 뭐 클라우드 일 수도 있겠네요. ^^;;


아무튼 설명 드리고자 하는 내용은 CDN 자체에 대한 내용은 아니고, CDN 적용 시 웹 소스에 대한 변경을 최소화 또는 하지 않으면서도 CDN의 성능을 그대로 가져갈 수 있는 방법을 설명 드리고자 합니다.


물론, CDN의 구성 방법에 따라 URL에 따라 특정 경로 또는 확장자에 대해 이와 같은 기능을 제공하기도 합니다. 아래의 방법은 이러한 방법을 통하지 않고 웹 서버 수준에서 처리하는 방법에 대해 설명 드리고자 합니다.


거창하게 설명 드렸지만, URL Rewrite라고 하는 IIS의 추가 기능을 설명하고자 합니다.


일반적으로, CDN은 다음과 같은 파일들에 대한 캐싱 역할과 빠른 다운로드 성능을 목적으로 합니다.

- 자주 변경되지 않는 정적 소스(텍스트) 파일들

- 이미지, 동영상 등 여러 사용자에게 배포되는 덩치 큰 파일들

- 전세계적으로 안정적인 다운로드 성능을 가져가고자 할 때

- 위와 같은 케이스일 수도 있으나, 인터넷 성능이 느린 곳을 위해


그런데, CDN을 적용해 보신 분들은 아시겠지만, 웹 소스의 링크되는 부분을 보통 /_img/public/home.gif 등과 같은 상대 경로로 지정하기 때문에 CDN 적용 시 어디부터 고쳐야 할지 난감하다는 걸 아실 겁니다.


이럴 때 사용할 수 있는 IIS의 추가 기능 중에 URL Rewrite라는 솔루션(?)이 있습니다.

URL Write는 사실 여러가지 기능이 있는데, 여기서는 이미지, 동영상 등 특정 확장자에 대한 요청을 CDN으로 리디렉션 하는 방법을 설명 드리겠습니다.


URL Rewrite에 대한 설치 방법은 아래 링크를 참조하시고요.

http://www.iis.net/downloads/microsoft/url-rewrite



설치 후 웹 사이트를 클릭하면 URL Rewrite 아이콘이 보입니다.


마우스 우클릭 후 Add Rule(s)를 클릭합니다.


빈 규칙으로 진행합니다.


규칙의 적절한 이름을 입력한 후 Pattern 부분에 다음과 같은 형태로 CDN으로 리디렉션할 확장자를 입력해 줍니다.


그런 다음, 아래의 Action Type을 Redirect로 설정하고, 리디렉션할 URL을 입력합니다.



끝입니다. 쉽죠? 이제 제대로 CDN으로의 리디렉션이 되는지 클라이언트에서 Fiddler를 통해 Trace를 해보면 다음과 같이 리디렉션이 잘 되고 있는 것을 알 수 있습니다.






:
Posted by 커널64