21/12/13
Hướng dẫn tăng tốc WordPress từ A đến Z
21/12/13 by Unknown
Có một mối lo khá phổ biến của những người sử dụng hosting quốc tế đó
là tốc độ trong nước không được tối ưu mặc dù vẫn biết chất lượng cũng
như khả năng bảo mật của nó rất tốt. Nhưng nếu bạn đang sử dụng
WordPress thì không thành vấn đề gì trong bài này mình sẽ hướng dẫn bạn
cách tăng tốc blog WordPress
đầy đủ từ cơ bản đến nâng cao nhằm giảm tải tối đa cho máy chủ cũng như
tiết kiệm thời gian tải trang cho người dùng, đây là yếu tố rất quan
trọng để bạn có thể cải thiện pageview, giảm tỷ lệ Bounce Rates trên
blog.
Sử dụng bộ nhớ đệm – Cache
Trong các cách tăng tốc blog WordPress thì không thể không kể đến bước này vì nó sẽ giúp bạn giảm đến 70% gánh nặng cho máy chủ cũng như thời gian tải trang. Bạn có thể thấy đối với các dịch vụ hosting chất lượng như Justhost, Hostgator, Siteground đều tích hợp sẵn plugin WP Super Cache sau khi bạn cài đặt blog thông qua công cụ cài đặt nhanh.Nếu bạn sử dụng VPS, Dedicated Server thì cache lại càng trở nên quan trọng hơn bao giờ hết.
Mỗi blog chỉ nên dùng 1 plugin cache để tránh xảy ra xung đột.
ử dụng Minify
Minify là công nghệ nén cache và làm nhẹ các thành phần CSS và Javascript trên website. Thông thường một website chúng ta có rất nhiều file CSS và Javascript khác nhau nhưng với công nghệ này nó sẽ nén tất cả lại thành 1 file duy nhất, sau đó sẽ loại bỏ các khoảng trắng, note để tập tin đó trở nên nhẹ hơn. Sau khi làm nhẹ xong, Minify sẽ làm một công việc quan trọng khác đó là tạo một bản lưu cache trên host để giảm thiểu tối đa truy vấn gửi đến máy chủ để thực thi các tập tin CSS hay Javascript đó.Trên WordPress, bạn có thể dùng 3 plugin sau đây:
- WP Minify (Thạch Phạm khuyên dùng)
- Better WordPress Minify
- W3 Total Cache (Đây là plugin tạo Cache ,có tích hợp Minify)
Khi sử dụng Minify, bạn cũng nên hạn chế sử dụng các plugin chứa nhiều Javascript trên blog vì có một vài plugin Javascript sẽ bị xung đột với Minify.
Làm nhẹ CSS
Thông thường, mỗi file CSS thường có chứa nhiều các thành phần không quan trọng như note, khoảng trắng, code trùng lặp, thừa ký tự,…v.v..Điều này gây ra trở ngại không nhỏ đến tốc độ của website, vì vậy hãy làm nhẹ tất cả file CSS có trong website của bạn bằng cách sau đây:Truy cập vào CleanCSS.Com
Copy nội dung của các file CSS có trong website vào ô CSS input, hoặc nhập URL dẫn đến file CSS tại ô CSS form URL.


Sau đó nhấn nút Process CSS bên dưới và bạn sẽ nhận được một code CSS mới, kèm theo đó là nó sẽ cho bạn biết đã được giảm xuống bao nhiêu phần trăm so với kích thước cũ. Bây giờ bạn chỉ việc copy đoạn CSS mới đó vào file ban nãy bạn copy để thay thế là được.
Cứ làm như vậy cho các file CSS khác. Cái này bạn đừng nên đòi hỏi plugin gì cả vì không có plugin nào làm tốt công việc này bằng cách thủ công đâu.
Nếu sau khi nén mà theme bị lỗi, thì bạn lấy code CSS gốc sau đó nén lại với Compression (code layout) là Standard. \
Nén/giảm dung lượng hình ảnh

Về nén trực tiếp trên máy thì bạn có thể dùng phần mềm FILEMinimizer Picture.
Còn muốn nén tự động bằng plugin thì các bạn có thể dùng WP Smush.It, EWWW Image Optimizer. Sau khi cài đặt, mỗi lần upload ảnh lên nó sẽ tự động nén cho bạn. Hoặc có thể sử dụng Bulk Optimize trong phần Media để nén tất cả hình ảnh có trên host.
Nén Gzip - Gzip File Compression
Nén Gzip sẽ làm giảm thiểu tối đa thời gian phản hồi bằng cách giảm dung lượng tải về từ giao thức HTTP. Nó có thể nén các thành phần tĩnh trên website như CSS, Javascript, HTML nhưng trên lý thuyết và 1 số trường hợp, nó có thể làm việc cùng với XML và JSON. Các thành phần khác như hình ảnh, tài liệu PDF..v.v..có thể không cần sử dụng gzip vì bản thân nó đã được nén sẵn.
Kích hoạt gzip bằng htaccess
Đối với máy chủ Apache
mod_pagespeed
là một Apache module được phát triển bởi Google nhằm hỗ trợ nén trang. Hiện tại có một vài nhà cung cấp như Dreamhost, Godaddy
đã áp dụng module này vào máy chủ của họ để tối ưu hóa nhanh hơn. Nếu
hosting của bạn đang sử dụng chưa kích hoạt sẵn module này thì bạn cần
phải kích hoạt thủ công bằng cách thêm nội dung sau vào file .htaccess ở
thư mục gốc.ModPagespeed on # using commands,filters etcNhưng đáng buồn là không phải shared hosting nào cũng hỗ trợ
mod_pagespeed
module. Nếu host bạn không hỗ trợ nó thì có thể dùng mod_deflate
để thay thế (Apache 1.3.x sử dụng mod_gzip nhưng từ Apache 2.x trở đi thì nó sử dụng mod_deflate để thay thế).<ifModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/css text/javascript application/javascript application/x-javascript </ifModule>
Đối với máy chủ Nginx
Nếu máy chủ của bạn đang sử dụng Nginx Webserver thì chèn đoạn sau vào file nginx.confserver { gzip on; gzip_types text/html text/css application/x-javascript text/plain text/xml image/x-icon; }
Nén gzip bằng file header.php
Nếu hosting của bạn không hỗ trợ cảmod_pagespeed
và mod_deflate
lẫn mod_gzip
thì có thể sử dụng PHP để thực hiện nén gzip. Cách này áp dụng cho cả Apache và Nginx. Chèn code sau vào file header.php<?php if ( substr_count( $_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip' ) ) { ob_start( "ob_gzhandler" ); } else { ob_start(); } ?>
Sử dụng Browse Caching
Hãy tưởng tượng như thế này, khi bạn vào một website bất kỳ thì trình duyệt phải bắt buộc tải về tất cả thành phần có trong một website để có thể phân tích và hiển thị nó. Và mỗi lần truy cập trình duyệt đều cần phải làm công việc này, khá mất thời gian nếu bạn thường xuyên vào một website nào đó.Vậy giải pháp Browse Caching có nghĩa là nó sẽ tạo ra bản bộ nhớ đệm của một website và lưu nó vào máy, kể từ các lần truy cập sau trình duyệt sẽ mang dữ liệu trong bộ nhớ đệm này ra thực thi mà không cần phải tải lại một lần nào nữa.
Đối với máy chủ Apache
Apache sẽ đảm nhận chức năng này với 2 modulemod_expires
và mod_headers
.Để kích hoạt nó bạn chèn đoạn nội dung sau vào file .htaccess
# BEGIN Expire headers <ifModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 5 seconds" ExpiresByType image/x-icon "access plus 2592000 seconds" ExpiresByType image/jpeg "access plus 2592000 seconds" ExpiresByType image/png "access plus 2592000 seconds" ExpiresByType image/gif "access plus 2592000 seconds" ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds" ExpiresByType text/css "access plus 604800 seconds" ExpiresByType text/javascript "access plus 216000 seconds" ExpiresByType application/javascript "access plus 216000 seconds" ExpiresByType application/x-javascript "access plus 216000 seconds" ExpiresByType text/html "access plus 600 seconds" ExpiresByType application/xhtml+xml "access plus 600 seconds" </ifModule> # END Expire headers # BEGIN Cache-Control Headers <ifModule mod_headers.c> <filesMatch "\.(ico|jpe?g|png|gif|swf)$"> Header set Cache-Control "public" </filesMatch> <filesMatch "\.(css)$"> Header set Cache-Control "public" </filesMatch> <filesMatch "\.(js)$"> Header set Cache-Control "private" </filesMatch> <filesMatch "\.(x?html?|php)$"> Header set Cache-Control "private, must-revalidate" </filesMatch> </ifModule> # END Cache-Control Headers
Đối với máy chủ Nginx
Chèn nội dung sau vào file config của nginxlocation ~* \.(jpg|png|gif|jpeg|css|js)$ { expires 1h; }
Tiết kiệm dung lượng MySQL Database
Các bạn cũng biết là bây giờ WordPress có thêm tính năng tự động lưu các bản nháp bài viết sau mỗi thời gian nhất định. Điều này có thể rất tiện dụng cho bạn nhưng nó lại làm kích thước cơ sở dữ liệu của bạn phình to ra nếu như các bạn không thường xuyên dọn dẹp nó. Còn nếu bạn lười dọn dẹp thì tắt nó luôn cho lành.Khai báo đoạn code này trong file wp-config.php
define('WP_POST_REVISIONS', false );
Tối ưu database
Trong một thời gian dài, database của bạn sẽ sinh ra một số thành phần rác được lưu vào đó sau mỗi lần thực thi lệnh từ máy chủ. Vì vậy không có gì quý hơn là hãy chủ động dọn dẹp nó sau một thời gian nhất định. Mình thường dọn database khoảng 1 tuần 1 lần. Bạn có thể sử dụng các plugin sau đây để dọn dẹp database:-
WP Optimize
- Yoast Optimize DB
-
WP DB Manager
Sử dụng CDN – Content Devilery Network
Nếu blog bạn có nhiều hình ảnh, video, bla bla…thì sử dụng CDN là cách để cải thiện tốc độ cũng như giảm tải cho máy chủ tốt nhất.Xem ngay: CDN là gì? Hướng dẫn sử dụng MaxCDN.
Ngoài MaxCDN ra thì còn có một số nhà cung cấp sau:
-
Amazon S3
- Amazon CloudFront
- Media Template CDN
- FreeCDN
Đó là một số cách để tăng tốc blog WordPress trở nên tối ưu nhất. Bây giờ việc còn lại là kiểm tra tốc độ website. Các bạn có thể dùng một số công cụ miễn phí dưới đây để kiểm tra tốc độ website.
-
GTmetrix
- Pingdom Tools
-
Google Page Speed Test
- WhichLoadFaster
-
WebPageTest
Get Updates
Subscribe to our e-mail newsletter to receive updates.
Những bài viết liên quan
Đăng ký:
Đăng Nhận xét (Atom)
0 Responses to “Hướng dẫn tăng tốc WordPress từ A đến Z”
Đăng nhận xét