Tạo CDN cho website sử dụng IIS Outbound Rules


Tạo CDN sử dụng IIS Outbound Rules, để giảm tải nội dung tĩnh của bạn và tăng tốc độ trang web của bạn. Giảm tải nội dung là quan trọng đối với hiệu suất của trang web của bạn, bởi vì sau đó nội dung được tải về song song và do đó nhanh hơn. Một trang web nhanh hơn sẽ nhiều khách truy cập, là người dùng thân thiện, cải thiện CTR và SEO Google. Bạn có thể sử dụng các Outbound Rules IIS để giảm tải javascript và CSS stylesheet.


Sử dụng IIS Outbound Rules có thể làm cho trang web của bạn nhanh hơn rất nhiều hoặc sẽ phá vỡ nó khi được sử dụng không đúng cách. Cũng lưu ý: Đánh giá mô hình biểu hiện thường xuyên trên toàn bộ nội dung đáp ứng là một CPU hoạt động chuyên sâu và có thể ảnh hưởng đến hiệu suất của các ứng dụng web (URL Rewrite Module 2.0 Cấu hình tham khảo)

Bước 1: Xác định những gì để viết

<rule name="CDN-css-01" preCondition="CheckHTML" stopProcessing="true">
  <match filterByTags="Link" pattern="http(s)?://www.(mastercode.vn)/(.*\.css)" />
  <action type="Rewrite" value="http{R:1}://cdn.{R:2}/{R:3}" />
</rule>

Dữ liệu ban đầu

  <link href="http://www.mastercode.vn/html/mastercode.vn/css/global.min.css" rel="stylesheet">

Dữ liệu sau khi áp dụng rewrite

  <link href="http://cdn.mastercode.vn/html/mastercode.vn/css/global.min.css" rel="stylesheet">

Bước 2: Xác định các điều kiện được áp dụng

<preCondition name="CheckHTML">
  <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
</preCondition>

Chỉ áp dụng cho những kiểu trả về có định dạng là text/html thì mới thực hiện Outbound Rules 

Outbound Rules cấu hình đầy đủ web.config

<rewrite>
  <outboundRules rewriteBeforeCache="true">
    <rule name="CDN-01-css" preCondition="CheckHTML" stopProcessing="true">
      <match filterByTags="Link" pattern="http(s)?://www.(mastercode.vn)/(.*\.css)" />
      <action type="Rewrite" value="http{R:1}://cdn.{R:2}/{R:3}" />
    </rule>
    <rule name="CDN-01-js" preCondition="CheckHTML" stopProcessing="true">
      <match filterByTags="Script" pattern="http(s)?://www.(mastercode.vn)/(.*\.js)" />
      <action type="Rewrite" value="http{R:1}://static.{R:2}/{R:3}" />
    </rule>
    <preConditions>
      <preCondition name="CheckHTML">
        <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" />
      </preCondition>
    </preConditions>
  </outboundRules>
</rewrite>

Ưu điểm:

  • Việc sử dụng cdn cho javascript và css, image giúp hệ thống web giảm tải
  • Giúp tăng tốc thời gian tải web nhanh hơn

Nhược điểm:

  • Tốn chi phí chuyển dữ liệu gốc sang dữ liệu sử dụng cdn
  • Server phải cài đặt URL Rewrite Module (đa số hiện nay thì các hosting đều hỗ trợ)

Chia sẽ bài viết :