Trống Đồng Đông Sơn

Khi triển khai tối ưu cache OpenLiteSpeed Cloudflare cho hệ thống WordPress chạy trên CyberPanel, rất nhiều quản trị viên hệ thống và lập trình viên gặp phải tình trạng file tĩnh (CSS, JS, Font) không giữ được cache, hoặc bị xung đột làm vỡ giao diện website sau khi nâng cấp. Bài viết này tổng hợp sổ tay cấu hình (Playbook) được đúc kết từ thực tế debug hạ tầng, giải quyết triệt để vấn đề xung đột header HTTP và tham số phiên bản.

Mô Hình Hạ Tầng Kỹ Thuật (Stack Áp Dụng)

Bộ giải pháp trong hướng dẫn này được áp dụng và kiểm chứng cho mô hình kỹ thuật phổ biến hiện nay:

  • Web Server: OpenLiteSpeed (OLS) tích hợp trên CyberPanel.
  • CMS: WordPress.
  • Plugin Cache: Super Page Cache for Cloudflare.
  • Mạng Phân Phối Nội Dung: CDN Cloudflare (Free / Pro).

tối ưu cache openlitespeed cloudflare

Giai Đoạn 1: Tối Ưu Tầng Máy Chủ OpenLiteSpeed (Server Level)

Mục tiêu của giai đoạn này là thiết lập quy tắc lưu đệm (Expires Settings) với thời hạn 180 ngày (6 tháng) cho 100% tệp tin tĩnh trên toàn bộ các website nằm trên Server, không cần tùy chỉnh thủ công từng Virtual Host.

Các bước thực hiện trên OpenLiteSpeed WebAdmin:

  1. Đăng nhập giao diện OpenLiteSpeed WebAdmin -> Chọn Server Configuration -> Chuyển sang Tab General.
  2. Cuộn xuống khu vực Expires Settings, bấm chọn Edit và nhập các giá trị:
  3. Enable Expires: Chọn Yes.
  4. Expires Default: Nhập 15552000 (tương đương 180 ngày).
  5. Expires By Type: Sao chép chính xác danh sách MIME Type bên dưới (đã bao gồm text/javascript):
image/jpeg=A15552000, image/png=A15552000, image/webp=A15552000, image/gif=A15552000, image/svg+xml=A15552000, image/x-icon=A15552000, text/css=A15552000, text/javascript=A15552000, application/javascript=A15552000, application/x-javascript=A15552000, font/woff=A15552000, font/woff2=A15552000, application/vnd.ms-fontobject=A15552000, font/ttf=A15552000, application/x-font-ttf=A15552000

Sau khi điền xong, nhấn nút Save và thực hiện bấm biểu tượng Graceful Restart (nút màu xanh lá cây ở góc trên bên phải màn hình) để áp dụng thay đổi toàn máy chủ.

Lưu ý quan trọng về MIME Type: Chuỗi trên bắt buộc chứa text/javascript=A15552000. Thực tế OpenLiteSpeed thường trả về header Content-Type cho file JavaScript dưới dạng text/javascript thay vì application/javascript chuẩn lý thuyết. Nếu khai báo thiếu MIME Type này, toàn bộ file JS sẽ bị trôi cache.

Giai Đoạn 2: Cấu Hình Plugin Super Page Cache For Cloudflare Tránh Xung Đột

Mục tiêu của bước này là ngăn chặn plugin tự động chèn các quy tắc ghi tệp .htaccess của Apache gây xung đột với OpenLiteSpeed, đồng thời điều hướng để CDN Cloudflare nhận diện thời gian lưu cache lâu hơn qua API.

Vào phần cài đặt của plugin Super Page Cache for Cloudflare trong bảng điều khiển WordPress và thiết lập 3 thông số sau:

  • Add browser caching rules for static assets: Chọn No (Tắt tính năng tự viết quy tắc Apache vào file .htaccess).
  • Overwrite the cache-control header… using web server rules: Chọn No (Tránh hiện tượng ghi đè làm mất Header HTTP thiết lập từ OLS).
  • Browser Cache-Control max-age: Nhập 15552000 (6 tháng) hoặc 31536000 (1 năm) để báo cho Cloudflare giữ cache tài nguyên tĩnh.

Nhấn nút Update Settings để lưu lại toàn bộ cấu hình.

Giai Đoạn 3: Quy Trình Kiểm Tra Kỹ Thuật (Verify & QA)

Để đảm bảo việc thiết lập tối ưu cache openlitespeed cloudflare hoạt động chính xác, bạn cần kiểm tra trực tiếp qua Command Line thay vì chỉ nhìn giao diện trình duyệt.

Bước 1: Xóa Cache Toàn Hệ Thống

Bấm nút Purge All Cache trên thanh công cụ của plugin Super Page Cache. Plugin sẽ phát lệnh API yêu cầu Cloudflare làm sạch dữ liệu đệm trên toàn bộ hệ thống EDGE Server.

Bước 2: Chạy Lệnh Kiểm Tra Header HTTP

Mở Terminal/Command Line và gửi yêu cầu kiểm tra đến một file CSS hoặc JS bất kỳ (bắt buộc giữ nguyên tham số phiên bản ?ver=xxx):

curl -I "https://domain-cua-ban.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"

Bước 3: Tiêu Chuẩn ĐẠT (PASS)

Thực hiện chạy lệnh curl từ 2 đến 3 lần liên tiếp. Kết quả được coi là thành công 100% khi hội đủ 3 chỉ số sau:

  • HTTP/2 200: Yêu cầu truy cập trực tiếp tệp tin tĩnh thành công, không gặp phản hồi chuyển hướng 301.
  • cache-control: public, max-age=15552000: Xác nhận máy chủ OpenLiteSpeed đã cấp thời gian sống (TTL) 180 ngày cho file.
  • cf-cache-status: HIT: Xác nhận Cloudflare đã lưu đệm thành công tệp tin chứa tham số truy vấn query string.

4 Bài Học Xương Máu Trong Quá Trình Debug Tối Ưu Hạ Tầng

Trong quá trình xử lý sự cố thực tế, có 4 nguyên tắc kỹ thuật quan trọng mà quản trị viên cần tuân thủ nghiêm ngặt:

  • Không xóa chuỗi truy vấn (Query String ?ver=): Tuyệt đối không dùng code hay plugin để gỡ bỏ tham số phiên bản file. Việc xóa query string không mang lại giá trị tăng tốc PageSpeed thực sự nhưng lại làm mất cơ chế Cache Busting, khiến trình duyệt khách hàng hiển thị giao diện vỡ khi bạn nâng cấp giao diện mới. Bạn có thể tham khảo thêm tài liệu kỹ thuật OpenLiteSpeed để hiểu rõ cơ chế xử lý file tĩnh của web server này.
  • Không bật các tùy chọn can thiệp .htaccess: Máy chủ OpenLiteSpeed xử lý rewrite rule khác với Apache truyền thống. Mọi tính năng có nhãn “Writes into .htaccess” trên các plugin tối ưu cache dành cho Apache cần được tắt triệt để.
  • Không test qua link rút gọn hoặc link gặp lỗi 301: Luôn sử dụng URL tệp tĩnh trực tiếp. Nếu lệnh test trả về HTTP 301 Redirect, kết quả thu được chỉ là của trang HTML, hoàn toàn vô giá trị khi debug file tĩnh.
  • Kiểm tra đúng Content-Type thực tế của máy chủ: Luôn dùng curl -I để xác định chính xác header Content-Type mà OpenLiteSpeed trả về cho từng định dạng tệp tin trước khi khai báo ExpiresBytype.

Kết Luận & Giải Pháp Tối Ưu Hạ Tầng Chuyên Nghiệp

Việc áp dụng đồng bộ quy trình trên giúp hệ thống website WordPress đạt tốc độ phản hồi tối ưu, giảm tải đến 80% RAM và CPU cho máy chủ VPS. Nếu quý khách hàng đang tìm kiếm giải pháp tư vấn hạ tầng hoặc giải pháp tổng thể, hãy tham khảo các dịch vụ tại dịch vụ thiết kế website và tối ưu hạ tầng DPS.MEDIA. Đội ngũ kỹ thuật DPS luôn sẵn sàng hỗ trợ doanh nghiệp tối ưu hiệu năng toàn diện qua Hotline/Zalo: 0961545445.

Ý kiến bạn đọc (9)

DPS SECURITY

Đăng nhập để bình luận

Đăng nhập nhanh 1-chạm bằng Google để chia sẻ ý kiến của bạn về bài viết.