Categories Cache Litespeed

Hướng dẫn cài đặt plugin LiteSpeed Cache (p1): bạn sẽ tốn thời gian tìm hiểu, nhưng bạn sẽ thấy điều đó xứng đáng thôi

hướng dẫn cài đặt LiteSpeed Cache phần 1

Vài lời của người dịch: plugin LiteSpeed Cache tuy hơi khó cài đặt lần đầu, nhưng nếu bạn làm đúng cách, nó ăn dễ WP Rocket hay Swift Performance (dù đây cũng là hai plugin cache có chất lượng hàng đầu, xem thêm bài: so sánh các plugin cache cho WordPress). Trong bài viết dưới đây của Johnny Nguyen, chúng ta sẽ học cách cấu hình nâng cao plugin LiteSpeed Cache để tối đa hóa tốc độ và không còn phải đau đầu về caching nữa. Vì bài dài nên tôi chia làm ba phần. Đây là phần đầu.

Ngoài ra để tiện cho mọi người hơn, thì bên cạnh phần giải thích chức năng, sẽ có cả phần chụp màn hình giao diện để mọi người dễ bắt chước, làm theo. Nhưng để chắc chắn hơn bạn hãy đọc cả phần giải thích nữa nhé! Sắp tới tôi sẽ dịch cả tài liệu chính thức của LiteSpeed và để link tương ứng đến mỗi mục- dành cho những ai muốn tìm hiểu sâu hơn thì có thể tham khảo.


Video tham khảo (không chi tiết như bài viết, nhưng có khả năng dễ hiểu hơn):


LiteSpeed cache phù hợp nhất trên các trang như thế nào?

  • Có lưu lượng truy cập từ trung bình đến lớn, hoặc/và
  • Có cấu trúc phức tạp cần các biện pháp tối ưu chuyên sâu, đa dạng, hoặc/và
  • Đang dùng web server của LiteSpeed (Enterprise hoặc Open).

LiteSpeed cache có thể KHÔNG phù hợp nhất hoặc không đem lại tác dụng vượt hơn đáng kể so với các plugin cache khác (Swift Performance, WP Rocket, Cache Enabler) trên các kiểu trang sau:

  • Website có lưu lượng truy cập thấp (chẳng hạn dưới 100 view/ngày) hoặc/và
  • Có cấu trúc đơn giản, theme đang dùng đã tối ưu về tốc độ, hoặc
  • Ít bài viết (chẳng hạn dưới 100 bài) hoặc
  • Đang dùng Apache hoặc NginX.

Nhờ có Quic.cloud, giờ bạn không bắt buộc phải dùng máy chủ web của LiteSpeed thì mới dùng được plugin LiteSpeed Cache, nhưng nếu có nó làm web server, hiệu suất trang sẽ tốt hơn hẳn. Hiện rất nhiều hosting hỗ trợ sẵn máy chủ LiteSpeed / OpenLiteSpeed hoặc có thể cài đặt dễ dàng. Bạn có thể tham khảo host của Closte, cài CyberPanel trên DigitalOcean, hoặc Vultr. Lưu ý về mặt chi phí thì OpenLiteSpeed hoàn toàn miễn phí, còn LiteSpeed Enterprise hiện chỉ miễn phí khi dùng một tên miền với RAM của máy chủ web từ 2GB trở xuống.


Một số thông tin cơ bản về LiteSpeed web servers

  • LiteSpeed là web server phổ biến thứ 4 sau Apache, NGINX và Microsoft IIS. LiteSpeed phổ biến kể từ khi nó được biết đến là có tốc độ ngang ngửa NGINX nhưng lại có khả năng tương thích với Apache.
  • Bạn có thể chạy các phần mềm Apache trên đó (chẳng hạn như WHM/cPanel) và cũng có thể sử dụng các tùy chỉnh của Apache (chẳng hạn như chỉnh sửa file .htaccess).
  • Nó phổ biến với cả các website nhỏ chạy trên VPS cũng như các website thương mại lớn chạy trên máy chủ riêng (dedicated servers).
  • Nó đem lại hiệu suất rất tuyệt vời mà không cần nhiều tùy chỉnh.
  • Kèm các plugin cache độc quyền (tự thiết kế) cho WordPress, Joomla, Drupal, Magento, vân vân.
  • Cũng kèm theo các ứng dụng bảo mật tự xây dựng để chống lại kiểu tấn công vét cạn (brute-force attacks) và DDoS (tấn công từ chối dịch vụ).

Một số thông tin cơ bản về plugin LiteSpeed Cache (LSC)

  • Plugin MIỄN PHÍ chất lượng cao chỉ có một yêu cầu- phải được sử dụng trên các máy chủ web của LiteSpeed (cái mà tôi đặc biệt yêu thích). Trên các máy chủ không-phải-LiteSpeed, bạn có thể sử dụng tất cả các tính năng của nó, ngoại trừ caching (đây là chức năng chính).
  • Đây là plugin caching cấp độ doanh nghiệp (enterprise-grade) đúng nghĩa (tốt cho cả người tiêu dùng thông thường và các yêu cầu cao cấp). Tôi đặc biệt khuyến khích sử dụng nó trên các trang có lưu lượng truy cập lớn (trên 1 triệu lượt xem trên tháng) và/hoặc có nhiều trang (trên 1 ngàn trang).
  • LSC được cập nhật rất thường xuyên. Đội lập trình viên của họ cực kỳ năng nổ (extremely aggressive) trong việc sửa các lỗi và khắc phục vấn đề ngay lập tức. Mô hình kinh doanh của họ xoay quanh việc duy trì tính ổn định của liên kết “máy chủ-máy khách”, vì thế họ không bao giờ tụt hậu về bất kỳ vấn đề quan trọng nào. Bất kỳ lỗi nào được tìm thấy thường sẽ được sửa trong vài GIỜ (chứ không phải trong vài ngày hay vài tuần).
  • Với những ai không chạy trên máy chủ LiteSpeed, tôi thích sử dụng plugin Swift Performance cache. Ngoài ra Rocket, Breeze, Comet Cache, Cache Enabler và Speed of Light cũng có chất lượng tốt.

LiteSpeed Cache có nhiều tính năng

  • Caching phía máy chủ (sử dụng máy chủ để tạo các trang cache chứ không dùng PHP chậm).
  • Caching đối tượng (Object caching).
  • Có thể cache các trang riêng tư (trang người dùng đăng nhập), và các trang admin.
  • Tối ưu hóa ảnh (vâng, nó miễn phí!)
  • Tương thích CDN
  • Tối ưu hóa cơ sở dữ liệu
  • QUIC.cloud – tính năng mới phục vụ các trang cache thông qua CDN cho những ai không sử dụng máy chủ LiteSpeed!
  • Và rất nhiều thứ khác nữa!

Tại sao tôi thích plugin LiteSpeed Cache hơn các plugin khác:

  • Phù hợp nhất cho các trang có lưu lượng truy cập khủng (lựa chọn ưa thích của tôi)
  • Phù hợp nhất cho các trang có hàng ngàn trang (lựa chọn ưa thích của tôi)
  • Có kiểu object-caching
  • Nhiều tùy chọn chi tiết và dành cho nhà phát triển để cache nội dung riêng tư
  • Plugin cache phía máy chủ đúng nghĩa (nhanh hơn so với cấp độ PHP)
  • Nhiều tùy chọn tối ưu nâng cao dành cho CSS/JS (nếu bạn thích)
  • Tối ưu hóa ảnh miễn phí
  • Tối ưu hóa cơ sở dữ liệu (chuyển các bảng thành dạng InnoDB và view autoloads)
  • Dịch vụ QUIC.cloud mới

LS & Lite Speed cache không chỉ tăng tốc trang web của bạn mà còn giúp bạn giảm tải server đi nhiều-cải thiện hiệu suất mà vẫn tiết kiệm được tiền!


Hướng dẫn cài đặt NHANH

Ngay dưới đây là phần hướng dẫn cài đặt chỉ 2 phút cho những người bận rộn. Bạn không mất nhiều thời gian để có tốc độ xé gió.

(Lưu ý: Tôi thích các tùy chỉnh của mình hơn nhiều so với các cài đặt mặc định của LiteSpeed Cache. Để hiểu rõ tại sao lại như vậy, hãy đọc các hướng dẫn cài đặt CHI TIẾT).

  1. Cài plugin LiteSpeed Cache (miễn phí). Sau đó đi đến phần Setting
  2. General > General > Request Domain Key – cần làm điều này nếu bạn định sử dụng dịch vụ của QUIC.cloud hoặc bạn muốn các tính năng của LiteSpeed caching trên nền máy chủ không-phải-LiteSpeed. Với những ai sử dụng LScache trên máy chủ LiteSpeed, bạn có thể không cần tích hợp QUIC.cloud.
  3. Cache > Cache > Enable Cache – bật tùy chọn này lên. Nếu bạn không sử dụng LS server, bạn cần phải đăng ký QUIC.cloud để sử dụng tính năng này.
  4. Cache > Cache Logged-in users – OFF.
  5. Cache > Drop Query String – nhập vào 3 mục sau, mỗi mục một dòng riêng lẻ (fbclid, gclid, utm*).
  6. Cache > Browser > Browser Cache – ON.
  7. Cache > WooCommerce > Privately Cache Cart – OFF.
  8. CDN > CDN Settings > QUIC.cloud CDN – bật nếu bạn muốn sử dụng QC CDN.
  9. CDN > CDN Settings > Cloudflare API (chỉ dành cho những ai đang dùng Cloudflare) – nhập email, khóa API toàn cầu và tên miền.
  10. Page optimization > CSS Settings > Generate Critical CSS – OFF.
  11. Page optimization > CSS Settings > Inline CSS Async Lib – OFF.
  12. Page optimization > Optimization Settings > Remove WordPress Emoji – ON. (Các trình duyệt hiện đại đều đã tích hợp sẵn emojis bên trong).
  13. Nhấn [SAVE CHANGES] và bạn sẽ có tốc độ xé gió!

Hướng dẫn cài đặt CHI TIẾT

Bước 1 – Cài đặt plugin LiteSpeed Cache

Yêu cầu:

  • Bạn phải sử dụng webserver của LiteSpeed hoặc dịch vụ QUIC.cloud để áp dụng cơ chế caching của họ. Để có kết quả tốt nhất, hãy sử dụng máy chủ LiteSpeed!
  • Nếu bạn mua webhosting từ bên thứ ba, cần đảm bảo rằng họ chạy trên máy chủ LiteSpeed.
  • Nếu bạn tự quản trị lấy web-server của bạn, cần đảm bảo bạn đã cấu hình bộ đệm gốc cho LS cũng như bật chức năng crawler.

Bước 2 – Cấu hình plugin LiteSpeed Cache

Đi đến phần setting từ panel quản trị (admin). Click vào LiteSpeed Cache > General.

Tôi sẽ đi đến tất cả các cài đặt và nói chi tiết các thiết lập riêng của mình. Bất kỳ cài đặt nào mà tôi không đề cập đến nghĩa là tôi dùng thiết lập mặc định có sẵn. Bạn cũng nên tham khảo thêm tài liệu hướng dẫn chính thức của LiteSpeed Cache.

General > General Settings

cài đặt chung của LiteSpeed Cache
  • Automatically Upgrade (tự động cập nhật LiteSpeed Cache khi nó ra phiên bản mới) – OFF là an toàn nhất, nhưng thành thật mà nói bạn hoàn toàn có thể để là ON. Vì LSC được xây dựng rất tốt; các bản cập nhật chưa bao giờ phá vỡ bất cứ trang web nào của tôi (còn các plugin cấp độ người dùng như Rocket hay Swift thì đã từng). LSC được cập nhật rất thường xuyên vì thế bạn có thể cảm thấy đỡ phiền phức hơn nếu bạn cho phép cập nhật tự động, còn nếu không bạn sẽ phải thấy thông báo cập nhật hàng tuần reo réo lên trên màn hình =)). Cảnh báo nhỏ: Tôi từng thấy một số cập nhật không thường xuyên (occasional updates) tạo ra vấn đề với tính năng tối ưu hóa ảnh của họ, vì thế bạn có thể không muốn cập nhật tự động nếu trang của bạn dựa rất nhiều vào tính năng này.
  • Domain Key (khóa cho tên miền) – bạn có thể yêu cầu key nếu bạn có ý định sử dụng bất kỳ tính năng nào của QUIC.cloud. Nó về cơ bản là CDN dạng khủng, nhưng có thêm nhiều tính năng mở rộng như tối ưu hóa ảnh (nén, ảnh chiếm chỗ), tạo critical CSS, caching trang tại máy chủ biên (edge). Tôi chỉ sử dụng nó để nén ảnh trên các trang không sử dụng plugin ShortPixel. Còn các tính năng khác tôi không cần. Nếu bạn sử dụng LSC trên máy chủ không-phải-LiteSpeed server, thì bạn cần có QUIC.cloud để nhận được lợi ích từ khả năng caching của họ (bạn có thể xem hướng dẫn kết nối plugin LiteSpeed Cache vs QUIC.cloud ở bài viết này).
  • Notifications (gửi các thông báo) – Tôi để OFF.

Cache > Cache

PS: ngoài tài liệu của Johnny ngay bên dưới, bạn có thể tham khảo tài liệu chính thức của LiteSpeed về tab Cache này.

cài đặt cache trong LiteSpeed 1
cài đặt cache trong LiteSpeed 2
  • Enable LiteSpeed Cache (bật litespeed cache) – ON (tất nhiên rồi!)
  • Cache Logged-in Users (cache cho người dùng đã đăng nhập) – OFF trong hầu hết trường hợp. Chỉ thực tế nếu bạn có rất ít người dùng đăng nhập, VÀ tất cả họ đều thấy thông tin khác nhau, VÀ họ ghé thăm trang và đăng nhập thường xuyên! Ngay cả có như vậy đi nữa tôi vẫn thích để nó là OFF để phòng trường hợp có xung đột tiềm năng. Bạn chắc chắn không nên sử dụng tính năng này nếu bạn có nhiều người dùng; nó sẽ tạo ra quá nhiều trang cần phải cache mà hầu như không được dùng.
  • Cache Commenters – OFF. Chỉ có tác dụng trên trang nào đấy đang có rất nhiều bình luận cùng lúc. Nếu bình luận trên trang của bạn cần phải kiểm duyệt và bạn bật chức năng này (ON) thì người bình luận sẽ nhận được trang đã cache và không thấy bình luận đang chờ phê duyệt, nếu tắt (OFF) người bình luận sẽ nhận được trang động, chứ không phải trang đã được cache. Không có nhiều ảnh hưởng dù bạn bật hay tắt (vì đa số website không có quá vài người bình luận cùng lúc), nhưng tôi thích để OFF hơn. Tính năng này có lẽ hữu ích trên trang rất lớn, nơi mà có thể có hàng nghìn người bình luận cùng lúc.
  • Cache REST API – không cần thiết với đa số mọi người. Để nó là ON, nhưng hãy tắt (OFF) nếu bất kỳ tính năng nào bị hỏng
  • Cache Login Page (cache cho trang đăng nhập/wp-login.php) – ON sẽ nhanh hơn vì các bot tự động thường tấn công trang đăng nhập. Để OFF nếu nó phá vỡ trang đăng nhập của bạn (thiết kế, chức năng, captcha). Với những ai thay đổi url của wp-login, đừng làm như vậy! LiteSpeed server đã tích hợp sẵn tính năng bảo vệ url đăng nhập rồi. Hiệu suất sẽ tốt hơn nhiều khi bạn để LS ngăn chặn tấn công vét cạn (brute force attacks) so với để các plugin bảo mật chậm chạp làm!
  • Cache favicon.ico – ON
  • Cache PHP Resources (cache các tài nguyên PHP) – ON. Thực sự giúp ích cho các theme và plugin viết mã không tốt.
  • Cache Mobile (cache di động) – OFF với hầu hết các trang! Đừng bật tính năng này trừ khi bạn có AMP hoặc có thiết kế/nội dung riêng cho di động. Các trang có thiết kế đáp ứng cũng không cần bật tính năng này.
  • List of Mobile User Agents – không cần quan tâm. Nó chỉ cần dùng nếu “Cache Mobile” được bật. Bạn có thể thêm các thiết bị khác ở đây nếu bạn cảm thấy một số cái bị thiếu.
  • Private Cached URIs – Tôi không bao giờ sử dụng. Nó chỉ hữu ích cho các trang cần tách riêng cache cho từng người dùng (giả định là họ xem các nội dung khác nhau). Một ví dụ tốt là trang tài khoản, nhưng caching sẽ không cần thiết nếu người dùng của bạn không đăng nhập thường xuyên. Bên cạnh đó vì họ đã là người dùng rồi họ có khả năng chẳng bận tâm lắm đến chuyện mất một chút giời gian tải trang. Tôi cũng không khuyến nghị sử dụng vì máy chủ của bạn phải mất thêm thời gian tạo cache trong khi người dùng có thể không quay lại sớm để tận dụng lợi thế ấy.
  • Force Public Cache URIs – các trang liệt kê ở đây sẽ được cached. Hữu ích trong trường hợp cần loại trừ các trang cụ thể khỏi các quy tắc loại trừ có độ phủ rộng dựa trên chuỗi.
  • Drop Query String (loại bỏ chuỗi truy vấn) – rất hữu ích để tránh caching trang không cần thiết cho một số chuỗi truy vấn. Một số chuỗi truy vấn dùng để thay đổi nội dung (ví dụ ngôn ngữ, tiền, vân vân) và cần phải cache một cách riêng rẽ. Một số chuỗi truy vấn không làm thay đổi nội dung (chẳng hạn các mã theo dõi Google/Facebook, các cookies tiếp thị liên kết) và chỉ được dùng để theo dõi, do vậy chúng cần đưa vào danh sách bỏ qua (drop). Tôi khuyên đưa các dòng này vào: fbclid, gclid, utm*, _ga. (hiện mặc định LiteSpeed Cache đã thêm các query này).

Cache > TTL (Time To Live / Thời Gian Sống)

thời gian sống của cache
Phần này bạn giữ như mặc định, không thay đổi gì

An toàn nhất là bạn đừng động đến phần này, cứ giữ nguyên như mặc định là được rồi:

  • Default Public Cache TTL (thời gian sống mặc định của cache công khai) – giữ nguyên. Đây là cài đặt thời gian sống của cache cho hầu hết các trang. Tất cả các TTL khác là cho các kiểu trang cụ thể. Giá trị mặc định là một tuần. Thời gian ghi trên này là tính theo giây. Các giá trị có thể là 1 giờ (3600), 1 ngày (86400), 2 tuần (1209600). Vì hầu hết các trang không thay đổi sau khi đăng, để TTL dài hơn có thể có ích.
  • Default Private Cache TTL (thời gian sống mặc định của cache riêng) – giữ nguyên.
  • Default Front Page TTL (thời gian sống mặc định của trang front page) – giữ nguyên.
  • Default Feed TTL – giữ nguyên.
  • Default REST TTL – giữ nguyên.
  • Default HTTP STATUS 404 Page TTL – giữ nguyên.
  • Default HTTP STATUS 403 Page TTL – giữ nguyên.
  • Default HTTP STATUS 500 Page TTL – giữ nguyên.

Cache > Purge

PS: Thiết lập phần này khéo léo giúp trang web của bạn có tỷ lệ trang được cache cao (tức là trang khi người dùng truy cập vào đã được cache).

  • Purge All ON Upgrade (tự động purge cache khi bạn cập nhật theme, plugin, hoặc lõi của WordPress) – an toàn nhất thì bạn để là ON.
  • Auto Purge Rules For Publish/Update (các quy tắc tự động purge khi xuất bản/cập nhật) – các thiết lập mặc định cũng ổn. Bạn có thể bỏ chọn các tùy chọn nhất định nếu bạn biết chúng không bao giờ cập nhật khi bạn xuất bản bài đăng mới. Hoặc bạn cũng có thể tick vào tùy chọn “All pages” để đảm bảo rằng mọi thứ sẽ được purged khi có bài viết mới hoặc cập nhật. Nếu bạn có các widgets trên bài post blog nhận được bình luận thường xuyên, “All pages” có thể là ý tưởng tốt, nhưng nhìn chung, trong đa số trường hợp, để như mặc định tốt hơn.
  • Serve Stale – Tôi thích ý tưởng ẩn bên dưới lựa chọn này (giúp giảm tải server trong khi purge cache) nhưng nó không cần thiết trên 98% website trừ khi bạn biết bạn đang làm gì. Tôi để nó OFF.
  • Scheduled Purge URLs – được dùng để purge URL cụ thể vào thời điểm mà bạn muốn.
  • Scheduled Purge Time – thời gian chính xác để thực hiện purge theo lịch trình. Tính năng này được dùng cho những người không sử dụng auto-purge, hoặc có nội dung được tạo ra từ các nguồn bên ngoài mà không kích hoạt auto-purge.
  • Purge All Hooks – danh sách này liệt kê các hook kích hoạt trang purge bất cứ khi nào các hành động nhất định được thực hiện. Những cái mặc định nên được để nguyên như vậy vì chúng ảnh hưởng trực tiếp đến thiết kế của trang web. Bạn có thể thêm các hook khác của các plugin khác nếu chúng ảnh hưởng đến thiết kế của trang (Nếu bạn không biết cách thêm các hook, bạn chỉ cần purge thủ công cache bất cứ khi nào bạn thực hiện thay đổi ảnh hưởng đến frontend/giao diện người dùng bên ngoài).

Nói thêm về cái “Auto Purge Rules For Publish/Update”: Khi bài đăng được xuất bản hoặc cập nhật, không chỉ có bài post, page đó thay đổi. Danh sách thư mục, danh sách tag, font page của blog, và nhiều kiểu dạng lưu trữ khác có thể cũng thay đổi. Chẳng hạn như bạn có thể chỉ định cụ thể kiểu trang sẽ được tự động purge mỗi khi bài đăng được tạo hoặc cập nhật.

Những trang mà bạn chọn phụ thuộc vào theme của bạn và cách các post hiển thị trên trang của bạn.

Có tùy chọn cho All pages/Tất cả các trang, cái được vô hiệu hóa theo mặc định. Khi bạn bật nó (tick chọn), tất cả các checkbox khác sẽ được bỏ qua. Lựa chọn All pages có ý nghĩa nếu bạn không bật ESI, và bạn có các widget liên quan đến bài post động hiển thị trên từng page, nhưng trong phần lớn trường hợp, tốt nhất là không chọn All pages.

Để tối ưu hóa hiệu suất, người quản trị chỉ nên check các tùy chọn cần thiết. Lấy ví dụ, với thư mục lưu trữ, nếu trang chỉ có thư mục tháng mà không có thư mục năm hoặc thư mục ngày thì chỉ “monthly archive” là cần được tick chọn. Nếu trang không có lưu trữ theo tác giả (author), thì bạn không cần chọn nó vì tick chọn thêm sẽ chỉ làm chậm quá trình này.

Cache > Excludes

Tôi hầu như không sử dụng bất cứ tính năng nào trong phần này. Chúng chỉ có ích khi bạn muốn loại trừ cache cho trang nào đấy. Có lẽ chỉ thích hợp khi bạn muốn thực hiện kiểm tra, chẩn đoán (sửa chữa các rắc rối liên quan đến cache).

  • Do not Cache URIs – sử dụng để loại trừ các trang không cần cache. (Tôi khuyên các trang đó nên bao gồm trang liên hệ, trang đã được đăng nhập, hoặc bất cứ trang thanh toán nào. Dù vậy trang thanh toán của WooCommerce đã được loại trừ theo mặc định rồi).
  • Do Not Cache Query Strings – loại trừ chuỗi truy vấn (query strings) nhất định không cần cache. Tốt trong một số trường hợp khi một số trang có chuỗi truy vấn cần làm mới nội dung thường xuyên (refresh content often).
  • Do Not Cache Categories – loại trừ các thư mục không cho cache.
  • Do Not Cache Tags – loại trừ các tag không cho cache.
  • Do Not Cache Cookies – loại trừ cookies nào không cần cache.
  • Do Not Cache User Agents – loại trừ user agents không cần cache
  • Do Not Cache Roles – loại trừ các user roles (vai trò người dùng) cụ thể để nó không cần cache. Không cần thiết trừ khi bạn thực sự muốn caching các trang riêng tư hoặc người dùng đã đăng nhập.

Cache > ESI

Tôi thích chức năng nâng cao của ESI vì nó cho phép bạn có được lợi ích từ việc cache ngay cả trong các trang (động) vốn không nên cache. Đây là tính năng tuyệt vời và thường chỉ có khả năng cấu hình từ phía máy chủ chứ không bao giờ có ở plugin…nhưng LiteSpeed lại làm được, họ đặc biệt như vậy đấy!

Bạn có thể chuyển đổi bất kỳ chức năng, nội dung hoặc widget nào thành ESI và LSC sẽ cho phép bạn quyết định xem nên cache kiểu gì: riêng tư, công khai với TTL riêng của nó (tốt cho các nội dung cần TTL ngắn), hoặc không cần cache chút nào (để nó động hoàn toàn). Trong một vài cuộc kiểm tra mà tôi tiến hành, tôi nhận thấy chức năng hoạt động hoàn hảo NHƯNG vẫn có một số vấn đề cho bất kỳ chức năng nào dựa trên kích hoạt cụ thể của riêng nó và chức năng JS cũng như những cái tương tự. Cần kiểm tra cẩn thận và tham khảo kỹ tài liệu trước khi bạn quyết định sử dụng nó.

  • Enable ESI – tôi để nó là OFF vì tôi không sử dụng nó nhiều.
  • Cache Admin Bar – ON vì an toàn và cũng hợp lý.
  • Cache Comment Form – ON vì an toàn và cũng hợp lý.
  • ESI Nonce – cho các plugin nhất định (sử dụng các tính năng bảo mật nonce) để hoạt động thông suốt với bộ nhớ cache riêng.
  • Vary Group – không quan tâm trừ khi bạn hiểu nó dùng làm gì.

Cache > Object

Caching kiểu Object (đối tượng) thường không được bật trên máy chủ trừ khi (A) host bạn đang dùng cho phép nó hoặc (B) đó là máy chủ của bạn và bạn bật Memcache hoặc Redis.

  • Object Cache – OFF là an toàn với hầu hết mọi người. Bạn có thể để nó là ON nếu (1) bạn đã cài Memcache hoặc Redis, (2) bạn có nhiều nội dung động hoặc truy vấn cơ sở dữ liệu (database queries).
  • Method (phương thức) – Redis được ưa thích hơn so với Memcache.
  • Host – phải là local host trừ khi nó có địa chỉ khác (có lẽ sẽ chậm hơn và chẳng phải ý tưởng hay khi bạn để nó ở máy chủ bên ngoài).
  • Port – cổng mặc định là ổn trừ khi bạn cài nó trên cổng tùy chỉnh khác.
  • Default Object Lifetime – mặc định 360 giây là đủ an toàn, nhưng bạn có thể gia tăng thêm nếu nội dung động của bạn không được làm mới nhanh như vậy.
  • Username – thường không cần thiết trừ khi bạn sử dụng SASL – phiên bản bảo mật fork của memcache.
  • Password – thường không cần thiết.
  • Redis Database ID – thường cứ để yên như mặc định thì tốt hơn trừ khi bạn muốn sử dụng ID Redis database khác để cải thiện hiệu suất trên database Redis bị tắc ngẽn.
  • Global Groups – tôi không động đến nó, bạn có thể thêm nếu thấy cần thiết.
  • Do Not Cache Groups – phần này tôi cũng không động đến, bạn thêm nếu thấy cần thiết.
  • Persistent Connection – Để ON là an toàn nhất.
  • Cache Wp-Admin – tôi thích để nó là OFF trừ khi bạn thực sự sử dụng object cache để tăng tốc khu vực backend. Tôi thường khuyến khích cập nhật máy chủ nếu backend của bạn chậm chạp.
  • Store Transients – nên để ON.
  • Các mục “Persistent Connection”, “Cache WP-Admin”, hoặc “Store Trasients”…bạn có thể bật hoặc tắt tùy thuộc vào nhu cầu sử dụng của bạn. Lựa chọn an toàn là để chúng OFF hoặc không sử dụng kiểu cache object ngay từ ban đầu nếu bạn không biết bạn đang làm gì. Caching WP-admin nên cân nhắc sử dụng khi mà khu vực admin chạy chậm trên các trang web nặng, nhưng bạn có nguy cơ gặp phải độ trễ thông tin (thông tin không cập nhật theo thời gian thực).

PS: Khi người dịch dùng thử host Closte (LiteSpeed) và cài CyberPanel trên DigitalOcean thì cả hai host này không cài sẵn Memcached và Redis. Khi cài CyberPanel trên Vultr, VPS này có tùy chọn cho phép cài cả hai Object cache này.

Cache > Browser

thời gian lưu cache của trình duyệt

Cái này có tính năng tương đương với các dòng expiry (hết hạn) của HTML trong file .htaccess hoặc một số plugin khác.

  • Browser Cache – Tôi thích để là ON.
  • Browser Cache TTL – bất cứ khoảng thời gian nào từ 2592000 giây (tương đương với 30 ngày) cho đến 31557500 (tương đương với một năm) tôi đều thấy ổn.

Phần vừa nói ở trên chính là cache phía trình duyệt, rất đơn giản nhưng đem lại cải thiện vô vùng lớn cho những ai hay ghé thăm website của bạn.

PS: với OpenLiteSpeed, dù thiết lập thời gian cache trình duyệt là bao nhiêu ngày trong plugin LiteSpeed cache thì bạn vẫn chỉ được cache có 7 ngày! Để khắc phục lỗi đó bạn có thể tham khảo bài viết sửa lỗi Browser Cache TTL trong OpenLiteSpeed.

Cache – Advanced

phần Advanced trong Cache

Các cài đặt này chỉ dành cho người dùng nâng cao.

  • Check Advanced Cache – thường kiểm tra trừ khi bạn sử dụng nhiều plugin cache cùng lúc- đây là điều mà tôi đặc biệt khuyên không nên làm. Trong trường hợp bạn sử dụng LSC cùng với plugin cache khác, bạn có thể để tùy chọn này hoặc bỏ chọn tùy thuộc vào plugin nào bạn cần hoặc có ý định sử dụng file advanced-cache.php. PS: có vẻ trong phiên bản mới nhất LiteSpeed Cache đã bỏ tính năng này.
  • Login Cookie – chỉ cần thiết nếu bạn có nhiều web cùng chia sẻ chung tên miền (một cái ở trong thư mục con). Trong đó, một trang cần nhập một định danh lookie cookie duy nhất vì thế LSC sẽ không trộn lẫn những khách truy cập đã đăng nhập vào trang đó
  • Improve HTTP/HTTPS Compatibility (cải thiện khả năng tương thích HTTP / HTTPS) – nên để OFF và dù sao thì bạn cũng không nên có nội dung hỗn hợp vì điều đó sẽ ảnh hưởng đến trạng thái SSL của bạn.
  • Instant Click (*) – tôi để nó OFF. Nó cũng hay khi hoạt động ổn, nhưng có thể gây vấn đề trên nhiều trang. Đây là chức năng dùng để tải trước các liên kết khi người dùng hover chuột qua nó. Nhưng nó có thế là nguyên nhân làm việc sử dụng máy chủ bị tăng cao nếu người dùng hover qua nhiều liên kết trước khi thực sự click. Chức năng này cũng có thể làm xáo trộn việc theo dõi cookie của bạn (ví dụ tiếp thị liên kết / affiliates, vân vân).

(*): Cá nhân người dịch không dùng Instant Click, nhưng tôi dùng tính năng tương tự và mạnh mẽ hơn của plugin Flying Pages, các liên kết chỉ cần nằm trong khung nhìn trình duyệt là được tải về (tất nhiên là chỉ html). Bạn có thể tham khảo hướng dẫn sử dụng plugin Flying Pages ở đây.

Cache > WooCommerce

Chú thích của người dịch: phần này bạn chỉ thấy nếu trang web của bạn cũng cài Woo, còn không thì sẽ không thấy.

  • Procduct Update Interval (Tần số cập nhật sản phẩm) – lựa chọn đầu tiên là an toàn. Lựa chọn thứ hai tốt hơn, và lựa chọn thứ ba cho hiệu suất tốt nhất. Cái cuối là an toàn nhất.
  • Use Front Page TTL for the Shop Page – ON sẽ có ích.
  • Privately Cache Cart – OFF. Tôi không thích nó để ON như mặc định và không tạo ra ý nghĩa gì. Tính năng này đôi khi là nguyên nhân gây lộn xộn session giỏ hàng. Tôi nghĩ việc caching giỏ hàng rỗng là phí phạm và dù sao đi nữa thì người mua hàng tiềm năng không thể lượn lờ giữa các trang quá lâu. Cho dù họ mua hay không mua. Và nếu họ có ý định mua, tôi nghĩ họ có thể kiên nhẫn đợi thêm một giây.

Mời các bạn tham khảo tiếp phần 2 ở đây.

(Dịch từ bài viết: LiteSpeed Cache WordPress Plugin – UNOFFICIAL GUIDE của Johnny Nguyen/WPJohnny, người dịch: Nguyễn Đức Anh)

Mời bạn tham khảo hệ thống các bài viết về plugin cache, gồm: [1] LiteSpeed cache, [2] Swift Performance, [3] FlyingPress, [4] Cache Enabler.

Comments are closed.

Back to Top