
Hướng dẫn sử dụng LiteSpeed Cache Crawler Script
Sơ đồ trang
Đứng trên góc độ cá nhân thì hiện tại tôi thích Nginx hơn Litespeed, tuy nhiên LiteSpeed vẫn có nhiều điểm thú vị và hiệu suất khá tốt nên đây là bài viết chia sẽ cách để tạo preloading cache giúp website bạn luôn được tạo cache để sẵn sàng phân phối tới người dụng ngay lập tức mà không phải đào vào database khi có yêu cầu từ người dùng.
LiteSpeed Cache Crawler Script là gì?
LiteSpeed Cache Crawler Script (còn gọi là trình thu thập thông tin hoặc trình làm ấm cache) là một công cụ mạnh mẽ giúp tiền tải cache cho website của bạn. Thay vì chờ đợi người dùng truy cập vào từng trang để tạo cache, công cụ này sẽ tự động truy cập vào các URL trong sitemap của bạn, tạo sẵn bộ nhớ cache cho trang web của bạn.
Lợi ích của việc sử dụng LiteSpeed Cache Crawler
- Cải thiện trải nghiệm người dùng: Khi người dùng truy cập website, họ sẽ nhận được trang đã được cache sẵn, giúp trang tải nhanh hơn.
- Ổn định hiệu suất: Giảm thiểu tình trạng người dùng đầu tiên phải chịu tốc độ tải trang chậm (còn gọi là “cache miss”).
- Tối ưu tài nguyên máy chủ: Bạn có thể lập lịch preload cache vào thời điểm ít lưu lượng truy cập.
Cache hoạt động như thế nào?
Khi không có preload cache:
- Người dùng đầu tiên truy cập vào một trang sẽ phải chờ đợi hệ thống tạo cache
- Những người dùng sau mới được hưởng lợi từ cache đã được tạo
Với preload cache:
- Hệ thống sẽ giả lập một “robot” truy cập vào tất cả các trang
- Robot này sẽ tạo sẵn cache cho tất cả trang
- Khi người dùng thật truy cập, họ sẽ nhận được phiên bản đã được cache
Yêu cầu sử dụng LiteSpeed Cache Crawler Script
Điều kiện cần thiết:
- Webserver LiteSpeed: Bạn phải đang sử dụng LiteSpeed Web Server.
- Plugin LiteSpeed Cache: Đã cài đặt và kích hoạt plugin LiteSpeed Cache cho website của bạn.
- Crawler Engine được bật: Crawler phải được kích hoạt ở cấp độ máy chủ.
- Sitemap XML: Bạn cần có sitemap dạng XML cho website của bạn.
- Quyền truy cập SSH: Cần có quyền truy cập SSH vào máy chủ.
- Hệ điều hành Linux: Script này chỉ hoạt động trên các máy chủ Linux.
- Cài đặt CURL: Máy chủ cần có CURL (thường đã được cài đặt sẵn).
Xem cách fix nếu gặp lỗi The crawler feature is not enabled on the LiteSpeed server
Lưu ý: Công cụ này chỉ dành cho những người đang sử dụng VPS hoặc máy chủ riêng, không phù hợp với shared hosting thông thường.
Cách tạo Sitemap
Trước khi sử dụng LiteSpeed Cache Crawler, bạn cần có một sitemap XML. Dưới đây là một số cách để tạo sitemap:
Bài viết liên quan
- Sử dụng plugin sitemap: Nếu bạn đang sử dụng WordPress, bạn có thể dùng các plugin như Yoast SEO, Rank Math, hoặc Google XML Sitemaps.
- Sitemap mặc định của WordPress: Từ WordPress 5.5 trở lên, WordPress có tính năng sitemap tích hợp sẵn. Sitemap sẽ có địa chỉ như:
https://example.com/wp-sitemap.xml
- Công cụ tạo sitemap online: Bạn có thể sử dụng các công cụ như XML-Sitemaps.com để tạo sitemap cho website của mình.
Cài đặt và sử dụng LiteSpeed Cache Crawler Script
Bước 1: Tải và cài đặt script
- Truy cập vào server thông qua SSH với quyền root
- Di chuyển đến thư mục
/usr/local/bin
:cd /usr/local/bin
- Tải script từ trang chủ LiteSpeed:
wget https://www.litespeedtech.com/packages/prestashop/cachecrawler.sh
- Phân quyền thực thi cho script:
chmod +x cachecrawler.sh
Bước 2: Sử dụng script cơ bản
Cú pháp cơ bản:
bash cachecrawler.sh https://example.com/sitemap.xml
Thay thế https://example.com/sitemap.xml
bằng URL sitemap thực tế của bạn.
Các trường hợp sử dụng phổ biến:
- Khi desktop và mobile có giao diện giống nhau:
bash cachecrawler.sh https://example.com/sitemap.xml
- Khi desktop và mobile có giao diện khác nhau:
bash cachecrawler.sh -m https://example.com/sitemap.xml
- Khi bạn muốn sử dụng User-Agent thông thường:
bash cachecrawler.sh -g -m https://example.com/sitemap.xml
- Khi cần sử dụng cookie:
bash cachecrawler.sh -c https://example.com/sitemap.xml
- Khi muốn thay đổi tốc độ quét (ví dụ: từ 0.1s mặc định lên 0.3s):
bash cachecrawler.sh -i 0.3 https://example.com/sitemap.xml
Các tùy chọn nâng cao
Script LiteSpeed Cache Crawler hỗ trợ nhiều tùy chọn nâng cao:
-h, --help
: Hiển thị trợ giúp và thoát.-m, --with-mobile
: Quét giao diện mobile bên cạnh giao diện mặc định.-c, --with-cookie
: Quét với cookie của trang web.-cc, --custom-cookie
: Quét với cookie tùy chỉnh.-w, --webp
: Quét với header WebP (khi bạn sử dụng ảnh WebP).-b, --black-list
: Thêm trang vào danh sách đen nếu có lỗi trạng thái HTML và không có cache.-g, --general-ua
: Sử dụng user-agent thông thường thay vì lscache_runner.-i, --interval
: Thay đổi khoảng thời gian giữa các request. Ví dụ:-i 0.2
thay đổi từ 0.1s mặc định lên 0.2s.-e, --escape
: Để thoát URL với perl, sử dụng khi URL có ký tự đặc biệt.-v, --verbose
: Hiển thị header phản hồi đầy đủ trong/tmp/crawler.log
.-d, --debug-url
: Kiểm tra trực tiếp một URL. Ví dụ:bash cachecrawler.sh -v -d https://example.com/test.html
.-qs, --crawl-qs
: Quét sitemap, bao gồm URL với query string.-r, --report
: Hiển thị tổng số kết quả quét.
Tự động hóa với Cron Job
Bạn có thể lập lịch tự động chạy script vào những thời điểm nhất định bằng cách sử dụng cron job:
- Mở crontab bằng lệnh:
export VISUAL=nano; crontab -e
- Thêm một dòng để chạy script, ví dụ chạy vào 2:00 sáng hàng ngày:
0 2 * * * /usr/local/bin/cachecrawler.sh https://example.com/sitemap.xml
- Hoặc chạy vào 2:00 sáng mỗi thứ Hai hàng tuần:
0 2 * * 1 /usr/local/bin/cachecrawler.sh https://example.com/sitemap.xml
- Nhấn
CTRL + O
để lưu, vàCTRL + X
để thoát.
Lời khuyên: Nên lập lịch chạy script vào thời điểm có ít lưu lượng truy cập để giảm tải cho máy chủ.
Cách xác minh Crawler đang hoạt động
Để kiểm tra xem cache đã được tạo thành công hay chưa, bạn có thể:
- Sử dụng công cụ phát triển của trình duyệt (Developer Tools)
- Kiểm tra header HTTP của trang web
- Tìm header
X-LiteSpeed-Cache: hit
– điều này xác nhận trang đã được cache
Những điều cần lưu ý
- Tài nguyên máy chủ: Việc chạy crawler yêu cầu tài nguyên máy chủ. Nếu máy chủ của bạn có cấu hình thấp, hãy tăng khoảng thời gian giữa các request (
-i
option). - Tương thích sitemap: Script LiteSpeed Cache Crawler hoạt động tốt với hầu hết các định dạng sitemap. Tuy nhiên, với sitemap mặc định của WordPress (từ phiên bản 5.5 trở lên), bạn có thể cần chỉ định URLs của sitemap con thay vì sitemap tổng, ví dụ:
bash cachecrawler.sh https://example.com/wp-sitemap-posts-post-1.xml
- Cache TTL (Time To Live): Lên lịch crawler dựa trên thời gian TTL của cache. Nếu cache của bạn hết hạn sau 24 giờ, bạn nên chạy crawler ít nhất mỗi 12 giờ.
Kết luận
LiteSpeed Cache Crawler Script là một công cụ mạnh mẽ giúp tối ưu hóa hiệu suất website của bạn bằng cách tạo sẵn cache. Nó đặc biệt hữu ích cho các website có lưu lượng truy cập cao và có nhiều trang cần được cache.
Với các tùy chọn linh hoạt và khả năng tự động hóa thông qua cron job, bạn có thể đảm bảo rằng người dùng luôn nhận được trải nghiệm tốt nhất khi truy cập website của bạn.
Nguồn script: https://docs.litespeedtech.com/lscache/lscps/crawler/