Trong các bài hướng dẫn cài đặt Google Pagespeed của mình, nếu bạn đã làm theo thì hiện tại nó đã hoạt động tốt với một số chức năng chính. Thế nhưng thực tế, Google Pagespeed có rất nhiều chức năng khác nhau (gọi là Module) nên trong bài này mình sẽ giải thích chi tiết ý nghĩa của từng module và cách bật/tắt các module trong thiết lập Google Pagespeed.
Thay đổi cấu hình PageSpeed thế nào?
Thêm một tham số vào HTTP Header của website
Thêm module vào Google Pagespeed
Tất cả những đoạn cấu hình mình đề cập tới bài này đều sẽ được lưu trong file pagespeed.conf, cụ thể:
Đối với Apache, các thiết lập trong bài bạn phải thêm vào file pagespeed.conf, nhưng sẽ nằm bên trong cặp thẻ <IfModule pagespeed_module>...</IfModule>
Còn NGINX thì cứ nhét vào file pagespeed.conf, chỗ nào cũng được miễn sao bạn dễ dàng quản lý.
Nếu bạn dùng Ubuntu mà làm theo hướng dẫn của mình thì sửa file /etc/nginx/common/pagespeed.conf. Riêng phần thiết lập bật/tắt Google Pagespeed ở Ubuntu sẽ nằm ở /etc/nginx/conf.d/pagespeed.conf.
Và sau khi thay đổi nội dung các file cấu hình, bạn phải khởi động lại Apache hoặc NGINX.
Nếu bạn muốn tắt chức năng Google Pagespeed thì chỉ cần đưa giá trị của tham số sau về off thay vì on.
Apache:
# Bật ModPagespeed on # Tắt ModPagespeed off
NGINX:
# Bật pagespeed on; # Tắt pagespeed off;
Nếu bạn muốn thêm một tham số nào đó vào website khi sử dụng Google Pagespeed để tiện lợi trong việc kiểm tra thì có thể thêm dễ dàng bằng đoạn sau:
Apache:
ModPagespeedXHeaderValue "Powered By mod_pagespeed"
NGINX:
pagespeed XHeaderValue "Powered By ngx_pagespeed";
Kết quả:
Cache-Control:max-age=0, no-cache Connection:close Content-Length:7215 Content-Type:text/html; charset=UTF-8 Date:Sat, 14 Mar 2015 13:00:50 GMT Server:Apache/2.2.15 (CentOS) Vary:Accept-Encoding X-Mod-Pagespeed:Powered By mod_pagespeed X-Pingback:https://cddos.net/xmlrpc.php X-Powered-By:PHP/5.4.38
Thiết lập Rewrite Level của Google Pagespeed nghĩa là cấu hình kiểu ghi lại cache của các dữ liệu mà nó được nén. Sở dĩ bạn cần lưu ý điểm này là bởi vì có một số modules (hay còn gọi là Filters), chỉ hoạt động với một số Rewrite Level nhất định.
Hiện tại Google Pagespeed hỗ trợ 3 kiểu Rewrite Level như sau:
Để đổi kiểu Rewrite Level, bạn có thể sửa/chèn đoạn này:
Apache:
ModPagespeedRewriteLevel PassThrough
NGINX:
pagespeed RewriteLevel PassThrough;
Thêm module vào Google Pagespeed rất dễ dàng, bạn chỉ cần viết thêm một dòng bật module và tên của module cần bật là xong. Bạn có thể khai báo các module cần sử dụng trên một dòng hoặc nhiều dòng tùy thích. Kiểu thế này:
Apache:
# Khai báo một dòng ModPagespeedEnableFilters module_1,module_2,...module_n # Khai báo nhiều dòng ModPagespeedEnableFilters module_1,module_2,...module_n ModPagespeedEnableFilters module_3,module_4,...module_n
NGINX:
# Khai báo một dòng pagespeed EnableFilters module_1,module_2,...,module_n; # Khai báo nhiều dòng pagespeed EnableFilters module_1,module_2,...,module_n; pagespeed EnableFilters module_3,module_4,...,module_n;
Tại sao lại sử dụng khai báo nhiều dòng? Đơn giản là bạn có thể phân ra, ví dụ dòng thì thêm các module tối ưu ảnh, dòng thì thêm module tối ưu CSS/Javascript, dòng thì tối ưu protocol,…
Danh sách các modules của Google Pagespeed rất nhiều nên ở đây mình sẽ liệt kê ra các modules thường dùng, dễ hiểu nhất để các bạn tham khảo. Ngoài ra các bạn nên tham khảo qua danh sách toàn bộ modules có trong Google Pagespeed tại đây.
<head>
vào website nếu chưa có.<head>
được tìm thấy trong tài liệu.Nhìn qua các modules trong Google Pagespeed thì cái nào cũng có lợi cho website, nhưng việc sử dụng quá nhiều module sẽ giúp cho máy chủ của bạn sẽ cần thêm nhiều RAM hơn để xử lý, hao ổ cứng (lưu các file cache của nó) nên hãy chọn ra các modules mà bạn thật sự cần dùng để sử dụng thôi nhé.
Phần trước: Xem thống kê Google Pagespeed với pagespeed_admin