Khi Apache và Nginx ‘hụt hơi’: Tại sao nên chọn OpenLiteSpeed?
Làm hạ tầng cho e-commerce, mình sợ nhất cảnh server “treo” đúng lúc khách đang chốt đơn. Trước đây, combo Apache + PHP-FPM là lựa chọn “quốc dân” nhờ sự ổn định. Nhưng khi traffic chạm mốc 2.000 – 3.000 CCU (Concurrent Users), Apache ngốn RAM kinh khủng, khiến hệ thống phản hồi cực chậm.
Nginx là cứu cánh về tốc độ nhưng lại thiếu file .htaccess. Việc cấu hình Rewrite Rule cho WordPress trên Nginx khá rắc rối, chỉ cần sai một dấu chấm phẩy là sập cả site.
OpenLiteSpeed (OLS) giải quyết được cả hai vấn đề này. Nó sử dụng kiến trúc Event-driven giống Nginx nhưng lại hiểu được các quy tắc của Apache. Trong các bài test thực tế, OLS có thể xử lý lượng request lớn gấp 3-5 lần Apache trong khi tiêu tốn ít hơn 60% tài nguyên RAM.
So sánh thực tế: OpenLiteSpeed vs. Nginx vs. Apache
Dưới đây là bảng so sánh nhanh dựa trên kinh nghiệm thực chiến của mình trên các server có cấu hình 2 vCPU/4GB RAM:
- Apache: Tương thích cực tốt, nhưng dễ bị nghẽn cổ chai khi đạt mức 500-700 request/giây.
- Nginx: Chịu tải tốt, xử lý file tĩnh siêu nhanh nhưng config PHP (PHP-FPM) hơi cồng kềnh.
- OpenLiteSpeed: Tốc độ xử lý PHP nhanh nhất nhờ LSAPI. Đặc biệt, bộ nhớ đệm LSCache tích hợp sẵn giúp giảm tải cho database đáng kể.
Nếu mục tiêu của bạn là tối ưu TTFB (Time to First Byte) xuống dưới mức 200ms mà không muốn nâng cấp phần cứng, OLS là lựa chọn không có đối thủ.
Quy trình triển khai OpenLiteSpeed trên CentOS Stream 9
Đây là “checklist” mình thường dùng để setup server cho khách hàng. Môi trường yêu cầu là một server CentOS Stream 9 mới hoàn toàn (Fresh Install).
Bước 1: Cấu hình Repository chính thức
Kho ứng dụng mặc định của CentOS không có OLS. Bạn cần nạp repo từ chính nhà phát hành LiteSpeed để cài đặt bản mới nhất.
sudo rpm -Uvh http://rpms.litespeedtech.com/centos/litespeed-repo-1.1-1.el9.noarch.rpm
Sau khi chạy lệnh trên, hãy làm sạch cache để hệ thống nhận diện đúng các gói tin mới:
sudo dnf clean all
Bước 2: Cài đặt OpenLiteSpeed và PHP 8.3
OLS sử dụng phiên bản PHP được tối ưu riêng gọi là LSPHP. Hiện tại, PHP 8.3 đang cho hiệu năng xử lý script nhanh hơn khoảng 10% so với bản 8.2. Mình khuyên anh em nên dùng bản này cho các dự án mới.
sudo dnf install openlitespeed lsphp83 lsphp83-common lsphp83-mysqlnd lsphp83-gd lsphp83-process lsphp83-mbstring lsphp83-xml lsphp83-opcache lsphp83-bcmath lsphp83-pdo
Hệ thống sẽ tự động kéo các dependency cần thiết. Quá trình này thường mất khoảng 1-2 phút tùy vào tốc độ mạng của server.
Bước 3: Khởi tạo tài khoản Web Admin
Thay vì sửa file config khô khan, OLS cho phép bạn quản lý mọi thứ qua giao diện web tại port 7080. Hãy chạy script sau để đặt username và password quản trị:
sudo /usr/local/lsws/admin/misc/admpass.sh
Mẹo nhỏ: Hãy đặt password có độ phức tạp cao vì port quản trị này thường là mục tiêu của các cuộc tấn công brute-force.
Bước 4: Mở cổng Firewall
CentOS Stream 9 quản lý bảo mật rất chặt qua firewalld. Nếu không mở port, bạn sẽ không thể truy cập vào web. Bạn cần mở các cổng: 80 (HTTP), 443 (HTTPS), 7080 (Admin) và 8088 (Port test của OLS).
sudo firewall-cmd --permanent --add-port={80/tcp,443/tcp,7080/tcp,8088/tcp}
sudo firewall-cmd --reload
Bước 5: Kiểm tra trạng thái dịch vụ
Kích hoạt để OpenLiteSpeed tự động chạy mỗi khi reboot server:
sudo systemctl enable --now lsws
sudo systemctl status lsws
Nếu thấy trạng thái active (running), bạn hãy truy cập http://IP_CUA_BAN:8088. Nếu hiện trang chúc mừng của LiteSpeed là mọi thứ đã sẵn sàng.
Tinh chỉnh OpenLiteSpeed qua Web Admin
Đăng nhập vào https://IP_CUA_BAN:7080 để bắt đầu cấu hình sâu hơn. Lưu ý: Trình duyệt sẽ báo lỗi SSL vì chúng ta chưa cài chứng chỉ thật, bạn cứ nhấn “Tiếp tục truy cập” nhé.
Chuyển đổi Port 8088 sang Port 80
Để website chạy chính thức trên tên miền, bạn phải đưa nó về port 80 tiêu chuẩn:
- Tìm menu Listeners ở cột bên trái.
- Chọn biểu tượng View tại dòng Default.
- Nhấn Edit và đổi số
8088thành80. - Bấm Save. Đừng quên nhấn nút Graceful Restart (biểu tượng màu đỏ) để áp dụng.
Cấu hình LSPHP 8.3 làm mặc định
Để server nhận đúng bản PHP 8.3 vừa cài, bạn vào Server Config -> External App. Tại đây, hãy sửa đường dẫn (Command) của lsphp thành: $SERVER_ROOT/lsphp83/bin/lsphp.
Sức mạnh thực sự của LSCache
Điểm ăn tiền nhất của OLS chính là LSCache. Trong một dự án mình chuyển dữ liệu từ Apache sang OLS, chỉ riêng việc bật LSCache đã giúp giảm TTFB từ 1.2s xuống còn 0.15s.
Khác với các plugin tạo cache tĩnh thông thường, LSCache có khả năng “Purge” (xóa cache) cực kỳ thông minh. Khi bạn cập nhật bài viết, nó chỉ xóa cache của bài đó mà không làm ảnh hưởng đến các trang khác. Điều này giúp server luôn giữ được hiệu suất đỉnh cao dù website có hàng nghìn bài viết.
Lưu ý quan trọng: OLS hỗ trợ .htaccess nhưng không tự động nạp lại khi bạn sửa file. Mỗi lần cài plugin mới hoặc đổi cấu hình Permalink trong WordPress, bạn cần vào Admin OLS và chọn Graceful Restart.
Lời kết
Cài đặt OpenLiteSpeed trên CentOS Stream 9 là phương án tối ưu nhất để chạy WordPress tốc độ cao với chi phí thấp. Hy vọng hướng dẫn này giúp bạn tự tin hơn khi build server. Nếu gặp lỗi “403 Forbidden” hoặc không kết nối được database, hãy kiểm tra lại cấu hình SELinux hoặc phân quyền folder html nhé!

