Saturday, March 1, 2025

Caching WordPress không cần Plugin

-

1. Tổng quan.

Caching WordPress giúp tăng tốc độ tải trang, giảm tải cho server và tối ưu tài nguyên mà không cần dùng plugin. Các phương pháp bao gồm caching database bằng Redis hoặc Memcached, caching object, sử dụng Ramdisk để lưu trữ dữ liệu tĩnh và cấu hình Nginx FastCGI Cache để giảm tải PHP.

2. Cache Database bằng Redis hoặc Memcached

Redis Cache cho MySQL/MariaDB

Redis có thể cache các truy vấn SQL để giảm tải cho MySQL/MariaDB:

Cài đặt Redis và module Redis cho MySQL.

 apt install redis-server php-redis

Cấu hình Redis trong wp-config.php

define('WP_CACHE', true);
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);

Bật query cache cho MySQL/MariaDB.

SET GLOBAL query_cache_type = ON;
SET GLOBAL query_cache_size = 64M;

Memcached Cache cho MySQL/MariaDB

Tương tự Redis, Memcached cũng có thể giảm tải truy vấn database:

Cài đặt Memcached và module PHP.

apt install memcached php-memcached

Cấu hình Memcached trong wp-config.php

define('WP_CACHE', true);
define('WP_MEMCACHED_SERVERS', array('127.0.0.1:11211'));

3. Cache Object bằng Redis

WordPress có thể sử dụng Redis để cache object giúp giảm truy vấn database:

Cài đặt Redis và module Redis Object Cache:

apt install redis-server php-redis

Tạo file object-cache.php trong wp-content/.

wget https://raw.githubusercontent.com/ericmann/Redis-Object-Cache/master/object-cache.php -O wp-content/object-cache.php

Cấu hình trong wp-config.php.

define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_DATABASE', 0);
define('WP_REDIS_TIMEOUT', 1);
define('WP_REDIS_READ_TIMEOUT', 1);

4. Cache Data Tĩnh với Ramdisk

Ramdisk giúp lưu nội dung tĩnh vào RAM, tăng tốc độ truy cập:

Tạo Ramdisk (500MB) để lưu cache.

mkdir /mnt/ramdisk
mount -t tmpfs -o size=500M tmpfs /mnt/ramdisk

Chỉnh wp-config.php để trỏ UPLOADS đến Ramdisk.

define('UPLOADS', '/mnt/ramdisk/wp-uploads');

Thêm vào /etc/fstab để tự động mount.

tmpfs /mnt/ramdisk tmpfs defaults,size=500M 0 0

5. Cache với Nginx FastCGI (Không cần Plugin)

Nếu dùng Nginx, có thể bật cache FastCGI cho PHP:

Tạo thư mục cache.

mkdir -p /var/cache/nginx/fastcgi_cache
chmod 777 /var/cache/nginx/fastcgi_cache

Cấu hình cache trong nginx.conf.

fastcgi_cache_path /var/cache/nginx/fastcgi_cache levels=1:2 keys_zone=WORDPRESS:100m inactive=60m;
fastcgi_cache_key "$scheme$request_method$host$request_uri";
server {
    location ~ \.php$ {
        fastcgi_cache WORDPRESS;
        fastcgi_cache_valid 200 60m;
        fastcgi_cache_use_stale updating;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    }
}

Khởi động lại Nginx.

systemctl restart nginx

6. Preload Cache Bằng WP-CLI

WP-CLI có thể được sử dụng để preload cache:

wp cache flush
wp cache add homepage "cached homepage content"

Tóm tắt cách không dùng plugin:

Phương phápCông nghệ
Cache databaseRedis / Memcached
Cache objectRedis Object Cache
Cache file tĩnhRamdisk
Cache PHPNginx FastCGI Cache
Preload cacheWP-CLI

Bạn có thể kết hợp các phương pháp trên để tối ưu hóa hiệu suất WordPress mà không cần plugin.

7. Kết Luận

Việc caching WordPress không cần plugin giúp tối ưu hóa hiệu suất và giảm tải hệ thống bằng cách tận dụng Redis, Memcached cho database, Ramdisk cho nội dung tĩnh và FastCGI Cache với Nginx để xử lý PHP nhanh hơn. Tùy theo nhu cầu, có thể kết hợp nhiều phương pháp để đạt hiệu quả tốt nhất.

Previous article

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories