Trước kia mình có bài kích hoạt Memcached trên Shared Host có hỗ trợ Memcached như HawkHost.
Bài hôm nay mình sẽ đề cập đến cài đặt Memcached trên máy chủ Linux.
Cụ thể mình sẽ cung cấp cho bạn một hướng dẫn đầy đủ nhất về cài đặt Memcached. Bao gồm việc cài đặt memcached server. Module Memcached trong PHP 7.1.
Thêm nữa, mình sẽ hướng dẫn bạn chọn plugin WordPress nào để làm việc với memcached server.
Bài viết sẽ áp dụng đối với máy chủ Linux cài đặt HocVPS. Bạn có thể áp dụng kỹ thuật trong bài này với bất kỳ máy chủ Linux cài đặt hệ điều hành CentOS.
Bên HocVPS cũng có bài hướng dẫn cài đặt Memcached trên CentOS.
Bài viết này của mình sẽ tập trung vào giải pháp cụ thể: CentOS 7 + PHP 7.1 + website WordPress.
Một hệ thống Memcached sẽ bao gồm: memcached server, module memcached trong PHP và plugin WordPress hỗ trợ memcached.
Bước 1: Cài đặt Memcached
Đầu tiên chúng ta sẽ cài đặt memcached server.
Bạn chạy lệnh sau:
1 |
yum -y install memcached |
Câu lệnh sau để khởi động Memcached server:
1 |
systemctl start memcached |
Để Memcached chạy khi khởi động lại server, chạy lệnh sau:
1 |
systemctl enable memcached |
Cấu hình Memcached
Cấu hình memcached nằm trong file /etc/sysconfig/memcached. Bạn mở file này lên bằng trình biên tập nano trong Linux. (nếu nano chưa được cài đặt, bạn cài đặt bằng câu lệnh quen thuộc yum install nano)
1 |
nano /etc/sysconfig/memcached |
Đây là cấu hình mặc định:
Bạn có thể thay đổi lại cấu hình như sau: (tăng cache size lên 128MB, options chỉ cho phép kết nối tới local qua port 11211).
1 2 3 4 5 |
PORT="11211" USER="memcached" MAXCONN="10240" CACHESIZE="128" OPTIONS="-l 127.0.0.1" |
Để theo dõi tình trạng memcached, bạn nên cài đặt thêm một tool như phpMemcachedAdmin.
Cài đặt tool này khá đơn giản. Bạn chỉ cần tải về, giải nén là sử dụng được ngay.
Ở đây mình sẽ cài đặt vào thư mục private_html của domain chính mà mình cung cấp khi cài đặt HocVPS:
1 2 3 4 5 |
cd /home/khamphaso.com/private_html/ wget https://github.com/elijaa/phpmemcachedadmin/archive/1.3.0.tar.gz tar -xvzf 1.3.0.tar.gz mv phpmemcachedadmin-1.3.0 memcached && chmod -R 777 memcached/Temp/ memcached/Config/ rm -f 1.3.0.tar.gz |
Giờ bạn truy cập tool ở địa chỉ: http://your_ip_address:port/memcached
Port chính là port admin bạn chọn khi cài đặt HocVPS.
Như hình trên lần đầu tiên truy cập bạn gặp lỗi: Error : Configuration file or folder is missing, please fix this error and try again
Đi tới Edit Configuration. Click Save Live Configuration. Thế là xong.
Bước 2: Cài đặt Module Memcached PHP
Bạn cần cài đặt thêm Module Memcached PHP bằng lệnh sau:
1 |
yum --enablerepo=remi,remi-php71 install php-pecl-memcached php-pecl-memcache |
Khởi động lại PHP và Nginx:
1 2 |
systemctl restart php-fpm.service systemctl restart nginx.service |
Bước 3: Cài đặt plugin WordPress
Mình sẽ đề cập đến tất cả tình huống phổ biến ở đây.
Trường hợp 1:
Bạn sử dụng plugin W3 Total Cache.
W3 Total Cache có hỗ trợ Memcached do vậy đơn giản bạn làm như sau:
Đi tới Performance. Ở Page Cache, Database Cache và Object Cache bạn chỉ cần chọn Memcached. Click nút Save Settings & Purge Caches. Thế là xong. Không cần cấu hình thêm.
Nhớ check lại sử dụng cache bằng tool phpMemcachedAdmin ở trên.
Trường hợp 2:
Trường hợp rơi vào việc bạn sử dụng plugin cache không hỗ trợ Memcached như WP Rocket, LiteSpeed Cache (khi bạn cài đặt web server OpenLiteSpeed)
Với trường hợp này, bạn cần cài đặt thêm một plugin Memcached Is Friend. (Plugin này trên GitHub, xem cách cài đặt Ở ĐÂY)
Bạn chỉ cần cài đặt và kích hoạt plugin. Sau đó đi tới Tools -> Memcached, thấy message như này là thành công rồi:
Nếu bạn không muốn sử dụng Memcached thì dùng lệnh sau để xóa:
1 2 3 |
yum remove memcached php-pecl-memcached php-pecl-memcache systemctl restart php-fpm.service systemctl restart nginx.servicet |
Chúc bạn thành công!