Hướng dẫn bật nén GZIP cho website WordPress

0 Flares Twitter 0 Facebook 0 Google+ 0 Pin It Share 0 Filament.io 0 Flares ×

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 !

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

  • Tăng tốc website, tài nguyên kéo về nhỏ nên load nhanh hơn
  • Giảm thiểu hỏng, vỡ trên đường truyền vì lý do phân mảnh các request
  • Nâng cao trải nghiệm người dùng
  • 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;

Lưu ý khi bật Gzip cho website

Các bạn có thể bật Gzip nhưng phải chắc chắn hosting của các bạn chưa bật nén một cách mặc định, có nhiều hosting của Việt Nam bật sẵn chức năng này nên các bạn hãy kiểm tra bằng các công cụ đo tốc độ tôi vừa giới thiệu bên trên, trường hợp bật rồi thì khỏi cần bật lại !

Trường hợp tiếp theo, các bạn lưu ý là ảnh, video và audio đã được nén theo mặc định, các bạn chỉ cần bật nén cho HTML, CSS và JAVASCRIPT thôi nha !

Có nhiều trường hợp các trình duyệt cũ rích không hiểu được phương thức nén, các bạn cần phải test trên mọi trình duyệt !

admin
Lập trình, Digital Marketing là niềm đam mê từ nhỏ của Tôi. Khám phá, tìm hiểu và chia sẻ những thông tin tôi đã gặp phải đến các bạn nhằm giúp đỡ các bạn đam mê giống Tôi. Luôn theo dõi HauITPham.com để nhận nhiều thông tin hữu ích khác

Trả lời