Nén Gzip để tăng tốc độ tải website

Posted on

Đa số các trình duyệt thông dụng hiện nay đều có khả năng giải nén những trang web đã được nén lại, để tiết kiệm băng thông và giúp thời gian tải website nhanh hơn. Mặc dù tính năng này đã được đưa ra một thời gian, nhưng ít ai chú ý hoặc biết đến nó.

Để biết thêm về những khái niệm nén trang web và những hỗ trợ đối với nó, mời bạn tham khảo trang web này. Nhưng nói tóm lại, thì đa số các trình duyệt đề hỗ trợ chức năng này, gồm Internet Explorer, FireFox, Netscape, Opera… bạn có thể kiểm tra bằng cách vào trang web này.

Đối với một số hiếm hoi các trình duyệt không hỗ trợ nén trang web, thì họ chỉ nhận được trang web không bị nén. Sau đây là một số ví dụ về những trang web được nén với Gzip.

gzip shot Nén Gzip để tăng tốc độ tải website

Đây là ví dụ về nén tài liệu html, file javascript và file css. Tổng cộng, trang web nhỏ hơn 75% và sẽ tải nhanh hơn 75%.

Bài hướng dẫn này sẽ hướng dẫn các bạn một cách để nén trang web với PHP. Bạn chỉ cần 5 phút để làm việc này.

Bước 1: Bật tính năng zlib compress trong PHP. Bạn có thể làm bằng cách thực hiện một trong ba cách sau:

1. Thêm dòng sau vào file .htaccess:

php_flag zlib.output_compression On

2. Thêm hoặc thay đổi (nếu có rồi) dòng sau trong file php.ini:

zlib.output_compression = On

3. Thêm dòng sau vào dòng đầu tiên trong file php của bạn, trước bất kì một output nào:

ini_set(‘zlib_output_compression’,’On’);

Bước 2: Nếu bạn muốn nén những file khác, như file javascript, css….:

Bạn có thể thay đổi đuôi của file thành .php để có thể output được với dạng Gzip. Ví dụ sau đây sẽ minh hoạ về cách output theo dạng Gzip với file core.js:

1. Đổi tên file core.js thành core.js.php

2. Mở file core.js.php, và thêm dòng sau vào đầu trang, sau đó lưu lại:

<?php header(“Content-type: text/javascript”); ?>

3. Gọi file này trong trang của bạn nhưng sau:

<script src=”/home/core.js.php” type=”text/javascript”></script>

 

Bạn có thể làm tương tự với file css với Content-type của css là text/css.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s