❤️ AZDIGI chính thức cập nhật hệ thống blog mới hoàn chỉnh. Tuy nhiên có thể một số bài viết bị sai lệch hình ảnh, hãy ấn nút Báo cáo bài viết ở cuối bài để AZDIGI cập nhật trong thời gian nhanh nhất. Chân thành cám ơn.
WordPress hiện đang vận hành 43% toàn bộ website trên internet. Con số này không phải ngẫu nhiên mà đến từ sự dễ sử dụng và linh hoạt của nền tảng này. Tuy nhiên, khi triển khai WordPress trên VPS, nhiều người gặp phải tình trạng trang web load chậm.
Bài này sẽ hướng dẫn các bước cụ thể để tăng tốc WordPress trên VPS từ 2-5 lần so với ban đầu. Tất cả đều là kỹ thuật đã được test thực tế trên hàng trăm website.
Lưu ý: Các lệnh đề cập trong bài viết này chỉ mang mục đích tham khảo, không làm theo vì việc nâng cấp, cài thêm phần mềm phải đảm bảo tương thích với các phần mềm cài đặt VPS của bạn. Các thao tác sai có thể làm website không thể hoạt động trên VPS.
Đo tốc độ hiện tại của website
Trước khi tối ưu, bạn cần biết website hiện tại chậm ở đâu. Đây là các công cụ cần thiết:
Kiểm tra TTFB (Time to First Byte)
TTFB là thời gian từ lúc browser gửi request đến khi nhận byte đầu tiên từ server. Đây là chỉ số quan trọng nhất để đánh giá hiệu năng server.
# Kiểm tra TTFB bằng curl
curl -o /dev/null -s -w "%{time_starttransfer}" https://domain.com
# Ví dụ kết quả: 0.850 (nghĩa là 850ms)
Cách đọc kết quả:
- Dưới 200ms: Tốt
- 200-600ms: Chấp nhận được
- Trên 600ms: Cần tối ưu ngay
Công cụ đo tốc độ online

- Công cụ TTFB của AZDIGI Tools: Phân tích TTFB trên nhiều vị trí địa lý để có đánh giá khách quan nhất.
- Google PageSpeed Insights (https://pagespeed.web.dev/): Phân tích chi tiết từng yếu tố, đưa ra gợi ý cụ thể, test trên cả mobile và desktop
- GTmetrix (https://gtmetrix.com/): Waterfall chart cho thấy thời gian load từng resource, lưu lịch sử để so sánh trước và sau tối ưu
💡 Mẹo: Ghi lại các số liệu này trước khi bắt đầu: TTFB, Page load time, PageSpeed score, Số lượng HTTP requests
Tối ưu phía server
Server là nền tảng quyết định tốc độ website. Đây là những cải tiến có impact lớn nhất.
Nâng cấp phiên bản PHP
PHP 8.2+ nhanh hơn PHP 7.4 khoảng 20-30% trên cùng một server. Nâng cấp đơn giản nhưng hiệu quả rõ rệt.
# Kiểm tra version hiện tại
php -v
# Nâng cấp lên PHP 8.2 (Ubuntu/Debian)
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.2 php8.2-fpm php8.2-mysql php8.2-gd php8.2-xml php8.2-curl
# Chuyển sang PHP 8.2
sudo a2dismod php7.4
sudo a2enmod php8.2
sudo systemctl restart apache2
Kích hoạt OPcache
OPcache lưu cache bytecode PHP đã compile, giảm thời gian xử lý cho mỗi request cho PHP. Việc sử dụng OPcache hầu như là bắt buộc để tăng hiệu suất xử lý.
# Kiểm tra OPcache có bật chưa
php -m | grep -i opcache
# Nếu chưa có, cài đặt
sudo apt install php8.2-opcache
Cấu hình OPcache trong /etc/php/8.2/fpm/php.ini:
; Kích hoạt OPcache
opcache.enable=1
opcache.enable_cli=1
; Memory allocation (128MB, đủ cho hầu hết site)
opcache.memory_consumption=128
; Số file PHP tối đa có thể cache (4000 đủ cho WP + plugins)
opcache.max_accelerated_files=4000
; Validate timestamp mỗi 60s trong production
opcache.revalidate_freq=60
; Không check file changes trong production (set 0)
opcache.validate_timestamps=0
Cấu hình PHP-FPM process manager
PHP-FPM quyết định cách xử lý các request đồng thời. Cấu hình sai sẽ gây ra nghẽn cổ chai nghiêm trọng.
Chỉnh sửa /etc/php/8.2/fpm/pool.d/www.conf:
; Process manager type (dynamic tốt nhất cho hầu hết site)
pm = dynamic
; Số process tối thiểu luôn chạy
pm.start_servers = 4
pm.min_spare_servers = 2
pm.max_spare_servers = 6
; Số process tối đa (dựa vào RAM: 1GB = 8-10 processes)
pm.max_children = 20
; Kill process sau 200 requests để tránh memory leak
pm.max_requests = 200
; Timeout cho slow scripts
request_timeout = 60
Chi tiết cấu hình và tối ưu thêm, tham khảo: Tối ưu Nginx PHP-FPM
Object Cache với Redis
WordPress mặc định không có object cache persistence. Mỗi request đều phải query database để lấy options, post meta, user data. Redis giải quyết vấn đề này.
Tại sao cần Redis?
Ví dụ một homepage WordPress thông thường:
- Không Redis: 20-40 database queries
- Có Redis: 3-8 database queries
Giảm queries có nghĩa là giảm load database và tăng tốc thời gian phản hồi đáng kể.
Cài đặt Redis
# Cài Redis server
sudo apt install redis-server
# Bật auto-start
sudo systemctl enable redis-server
sudo systemctl start redis-server
# Kiểm tra hoạt động
redis-cli ping
# Response: PONG
Cấu hình cơ bản Redis trong /etc/redis/redis.conf:
# Memory limit (256MB đủ cho site vừa)
maxmemory 256mb
maxmemory-policy allkeys-lru
# Persistence (tắt để tăng performance)
save ""
# Network (chỉ bind local)
bind 127.0.0.1
Kết nối WordPress với Redis
Cài plugin Redis Object Cache by Till Krüss từ WordPress admin. Plugin này đáng tin cậy và được dùng bởi hàng triệu site.
Sau khi cài xong:
- Vào Settings > Redis trong WordPress admin
- Click Enable Object Cache
- Kiểm tra status: “Connected”
Page Cache
Object cache chỉ cache data, còn page cache cache toàn bộ HTML đã render. Đây là cấp độ cache hiệu quả nhất.
Plugin cache phổ biến
- WP Super Cache: Đơn giản, ít cấu hình, tạo file HTML tĩnh, phù hợp site ít traffic
- W3 Total Cache: Nhiều tính năng, page cache + object cache + database cache, CDN integration, phức tạp nhưng mạnh
- LiteSpeed Cache: Dành cho LiteSpeed Web Server, hiệu năng cao nhất, tích hợp ESI (Edge Side Includes), chỉ hoạt động trên LiteSpeed server
Nginx FastCGI Cache (khuyên dùng)
Đây là giải pháp cache ở tầng web server, nhanh hơn plugin cache.
Thêm vào cấu hình Nginx:
# Cache zone definition (đặt trong http block)
fastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=WORDPRESS:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
server {
# ... cấu hình server khác
# Set cache headers
set $skip_cache 0;
# Skip cache cho admin, logged users
if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") {
set $skip_cache 1;
}
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
set $skip_cache 1;
}
location ~ \.php$ {
# ... fastcgi_pass và params khác
# Cache settings
fastcgi_cache WORDPRESS;
fastcgi_cache_valid 200 60m;
fastcgi_cache_bypass $skip_cache;
fastcgi_no_cache $skip_cache;
# Cache headers cho browser
add_header X-Cache $upstream_cache_status;
}
}
ℹ️ Tạo thư mục cache và restart Nginx sau khi cấu hình xong
Plugin audit: tìm thủ phạm gây chậm
WordPress plugin có thể là nguyên nhân chính gây chậm website. Một plugin viết kém có thể tạo ra hàng chục slow queries.
Cài Query Monitor plugin
Query Monitor là công cụ debug tốt nhất để phân tích performance.
Sau khi cài, vào trang bất kỳ và click Debug bar ở admin bar trên cùng.
Phân tích Database queries
- Click tab Queries
- Sort theo Time (giảm dần)
- Tìm queries mất thời gian > 0.1 giây
Query Monitor hiển thị Caller – plugin nào tạo ra query đó. Note lại plugin nào xuất hiện nhiều trong danh sách slow queries.
Thay thế plugin nặng
- WooCommerce nặng? Thử: Easy Digital Downloads (cho digital products), WP Simple Pay (cho payments đơn giản)
- Yoast SEO chậm? Thử: RankMath, SEOPress
- Page builders như Elementor, Divi chậm? Thử: Block editor native, GeneratePress theme + GenerateBlocks
💡 Nguyên tắc: Plugin làm ít việc hơn thường nhanh hơn.
Database optimization
Database WordPress có xu hướng phình to theo thời gian do revisions, spam comments, transients cũ.
WP-Optimize plugin
Plugin này dọn dẹp database an toàn và hiệu quả.
Các tính năng chính:
- Xóa revisions cũ (giữ lại 2-3 bản gần nhất)
- Dọn spam comments và pingbacks
- Xóa transients hết hạn
- Optimize database tables
Chuyển từ MyISAM sang InnoDB
MyISAM table engine cũ, không hỗ trợ transactions và row-level locking. InnoDB nhanh hơn cho WordPress.
-- Kiểm tra tables đang dùng MyISAM
SELECT TABLE_NAME, ENGINE FROM information_schema.TABLES
WHERE TABLE_SCHEMA = 'database_name' AND ENGINE = 'MyISAM';
-- Chuyển sang InnoDB
ALTER TABLE wp_posts ENGINE=InnoDB;
ALTER TABLE wp_comments ENGINE=InnoDB;
ALTER TABLE wp_options ENGINE=InnoDB;
⚠️ Các thao tác vào database luôn phải sao lưu (backup) cẩn thận trước khi làm.
Media optimization
Hình ảnh thường chiếm 60-80% dung lượng trang web. Tối ưu ảnh có ảnh hưởng lớn đến tốc độ tải trang nếu bạn đang sử dụng các hình ảnh có kích thước lớn, chưa tối ưu trên website.
Tối ưu dung lượng hình ảnh
Các hình ảnh nên được tối ưu dung lượng mà không làm mất đi chất lượng (hoặc không đáng kể) trước khi upload lên website. Một hình ảnh chưa được tối ưu có thể giảm đến 80% dung lượng mà chất lượng không thay đổi khi chỉ xem bằng mắt thường.
Với WordPress, có thể sử dụng plugin EWW Image Optimizer để tối ưu dung lượng tự động. Hoặc nếu bạn cần tối ưu đơn lẻ một vài hình ảnh thì có thể sử dụng công cụ Image Optimization miễn phí của AZDIGI.
Lazy load images
WordPress 5.5+ có sẵn lazy loading native. Ảnh chỉ load khi người dùng cuộn trang gần đến chúng.
Chuyển đổi sang WebP
WebP nhẹ hơn JPEG 25-35% với cùng chất lượng. Modern browsers đều hỗ trợ WebP.
Plugin WebP tốt:
- ShortPixel: Có free tier, convert bulk
- Imagify: Của WP Rocket team
- WebP Converter for Media: Free, nhiều options
CDN cho static files
CDN cache static files (ảnh, CSS, JS) tại nhiều server trên thế giới. User download từ server gần nhất.
Có thể sử dụng CloudFlare để có CDN miễn phí, nhưng khi truy cập trong nước thì có thể chậm hơn một chút.
Các bước cấu hình trên CloudFlare bao gồm:
- Đăng ký, add domain
- Đổi nameservers theo hướng dẫn Cloudflare
- Speed > Optimization: bật Auto Minify cho CSS, JS, HTML
- Caching > Configuration: Browser Cache TTL = 1 year
Xem thêm: Các hướng dẫn tối ưu và bảo mật website với CloudFlare
Checklist tối ưu WordPress VPS
Sau đây là checklist đầy đủ để tối ưu WordPress trên VPS:
✅ Server-level optimization
- Nâng cấp lên PHP 8.2 hoặc mới hơn
- Bật và cấu hình OPcache đúng cách
- Cấu hình PHP-FPM process manager phù hợp với RAM
- Sử dụng Nginx thay vì Apache (hoặc Nginx + Apache reverse proxy)
- Bật Gzip compression trên web server
- Cấu hình cache headers cho static files
✅ Caching layers
- Cài đặt và cấu hình Redis object cache
- Chọn và setup page cache (plugin hoặc Nginx FastCGI)
- Test cache hoạt động bằng cache headers và Redis monitor
- Cấu hình cache purge khi có content mới
✅ Media & assets optimization
- Enable lazy loading cho images
- Convert images sang WebP format
- Setup CDN cho static files
- Auto-resize ảnh upload để tránh file quá lớn
- Minify CSS và JavaScript
WordPress Hosting tối ưu tại AZDIGI
Nếu cần VPS đã được cấu hình sẵn cho WordPress với LiteSpeed Web Server, AZDIGI cung cấp gói WordPress Hosting đã tối ưu:
- LiteSpeed Web Server với LSCache tích hợp
- PHP 8.2+ và OPcache đã cấu hình
- Redis object cache sẵn sàng sử dụng
- Auto backup hàng ngày
- SSL miễn phí và CDN tích hợp
Xem thông tin WordPress Hosting AZDIGI →
Tối ưu xong có cần maintain gì không?
Cần monitor performance hàng tháng và dọn dẹp database mỗi 2-4 tuần. Cache sẽ tự động purge khi có content mới.
TTFB bao nhiêu là đủ tốt?
Dưới 200ms là excellent, 200-400ms là good, trên 600ms cần cải thiện. Mục tiêu nên là dưới 300ms.
Redis có tốn nhiều RAM không?
Redis thường dùng 50-200MB RAM cho site WordPress trung bình. ROI rất cao so với performance gain.
Plugin cache nào tốt nhất?
Nginx FastCGI cache > LiteSpeed Cache > WP Rocket > W3 Total Cache > WP Super Cache. Tuy nhiên cần phù hợp với setup server.
Có nên dùng cả object cache lẫn page cache không?
Có, hai loại này bổ trợ cho nhau. Object cache giảm database queries, page cache cache toàn bộ HTML output. Kết hợp cả hai để đạt performance tối đa.
Kết quả: Sau khi áp dụng đầy đủ các bước trên, website WordPress trên VPS có thể đạt được:
- TTFB giảm từ 800ms xuống 150-250ms
- Page load time cải thiện 2-5 lần
- Google PageSpeed score tăng từ 40-50 lên 85-95
- Server có thể handle gấp 3-4 lần traffic với cùng tài nguyên
Có thể bạn cần xem thêm
- Tối ưu Nginx và PHP-FPM cho VPS hiệu năng cao
- Hướng dẫn cấu hình LiteSpeed Cache cho WordPress đầy đủ trên hosting AZDIGI
- Lỗi 504 Gateway Timeout: nguyên nhân và cách khắc phục
- Swap trên VPS: Khi nào cần, cách tạo và tối ưu
- Hướng dẫn tối ưu WordPress với WP Rocket, Cloudflare APO và Cache Rules
- VPS bị chậm do mạng: Cách kiểm tra và khắc phục
Về tác giả
Trần Thắng
Chuyên gia tại AZDIGI với nhiều năm kinh nghiệm trong lĩnh vực web hosting và quản trị hệ thống.