Bật nén GZIP để tăng tốc cho website

Thủ thuật WordPress
Trong tất cả các cách tăng tốc website thì bật nén Gzip là một trong những cách hữu hiệu nhất, thông thường server trả về cho trình duyệt dưới dạng không nén, tuy nhiên khi nén lại chúng ta có thể tiết kiệm tới 30-70% lưu lượng và đương nhiên là tốc độ của website tăng lên ầm ầm vì dữ liệu nhỏ lại và truyền về trình duyệt người dùng nhanh chóng !
Mô tả phương thức nén website trước khi gửi tới trình duyệt

Mô tả phương thức nén website trước khi gửi tới trình duyệt
Các bạn nên sử dụng các công cụ kiểm tra tốc độ website trước khi bật Gzip, vì nếu website chạy nhanh rồi thì không cần thiết lắm phải làm bước này !

Lợi ích khi nén tài nguyên web lại

  1. Tăng tốc website, tài nguyên kéo về nhỏ nên load nhanh hơn
  2. Giảm thiểu hỏng, vỡ trên đường truyền vì lý do phân mảnh các request
  3. Nâng cao trải nghiệm người dùng
  4. Nâng cao thứ hạng trên máy tìm kiếm

Bật Gzip bằng PHP

Bạn có thể bật Gzip bằng lệnh PHP trong các trường hợp host của bạn không hỗ trợ bật qua .htaccess, các bạn làm như sau:
<?php if (substr_count($_SERVER[‘HTTP_ACCEPT_ENCODING’], ‘gzip’))
ob_start(“ob_gzhandler”); else ob_start(); ?>
Thêm dòng trên vào đầu file Index.php, đấy là file mồi nên chúng ta có thể bật ở file index.php !
Bạn cũng có thể bật bằng cách thêm code sau đây vào file PHP.ini nếu hosting của các bạn cho phép:
output_handler = Off
zlib.output_compression = On
zlib.output_handler = ob_gzhandler

Bật Gzip bằng HTACCESS

.htaccess là file cấu hình mặc định của Apache, trong nhiều trường hợp web hosting của các bạn cho phép can thiệp vào file này, các bạn có thể làm như sau, thêm code sau đây vào file htaccess trên host của các bạn:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
Trong trường hợp không được  ? Đừng lo, bạn có thể thêm code sau đây để thay thế:
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

Bật Gzip bằng file config của Nghinx

NghinX cũng hỗ trợ Gzip, các bạn có thể cho thêm nội dung code sau đây vào file config của NghinX:
 gzip on;
gzip_comp_level 2;
gzip_http_version 1.0;
gzip_proxied any;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

# Disable for IE < 6 because there are some known problems
gzip_disable "MSIE [1-6].(?!.*SV1)";

# Add a vary header for downstream proxies to avoid sending cached gzipped files to IE6
gzip_vary on;
(Nguồn jamviet.com)

Hits: 12

Leave a Reply