Nếu dùng hosting dùng chung, bạn thường không phải chọn: nhà cung cấp chọn sẵn, và LiteSpeed hoặc Apache kết hợp Nginx là phổ biến. Nếu tự quản VPS, Nginx là lựa chọn nhẹ và linh hoạt, Apache dễ dùng nhờ .htaccess, còn LiteSpeed hợp khi bạn muốn tương thích Apache kèm bộ nhớ đệm tích hợp cho WordPress. Không có web server "tốt nhất", chỉ có cái hợp với cách bạn vận hành.

Web server là phần mềm nhận yêu cầu từ trình duyệt và trả về trang web. Nó giống quầy lễ tân khách sạn: khách đến, lễ tân tiếp nhận, chuyển yêu cầu vào trong, rồi đưa kết quả ra. Ba "lễ tân" phổ biến nhất hiện nay có phong cách làm việc khác nhau.

Ba web server, ba triết lý

Apache: lâu đời, linh hoạt

Apache HTTP Server ra đời từ giữa thập niên 1990 và từng thống trị thị trường. Điểm mạnh lớn nhất là hệ thống module phong phú và file .htaccess: mỗi thư mục có thể có cấu hình riêng mà không cần quyền quản trị máy chủ.

Đây là lý do hosting dùng chung yêu thích Apache. Bạn tự viết quy tắc chuyển hướng, chặn IP, bảo vệ thư mục mà không cần nhờ ai. Đổi lại, việc đọc .htaccess ở mỗi request tốn thêm tài nguyên. Chính tài liệu của Apache khuyên chỉ dùng .htaccess khi không có quyền sửa cấu hình chính.

Apache hiện có nhiều chế độ xử lý (MPM). Chế độ event kết hợp PHP-FPM hiệu quả hơn nhiều so với cách cấu hình cũ.

Nginx: nhẹ, chịu đông

Nginx được thiết kế theo kiến trúc hướng sự kiện, bất đồng bộ. Một số ít tiến trình xử lý được rất nhiều kết nối cùng lúc mà tốn ít RAM. Nginx cực mạnh khi phục vụ file tĩnh, làm proxy ngược, cân bằng tải.

Nginx không xử lý PHP trực tiếp mà chuyển qua PHP-FPM. Nó không hỗ trợ .htaccess. Mọi cấu hình nằm ở file cấu hình trung tâm, cần quyền quản trị và tải lại dịch vụ. Với người tự quản VPS, đây là ưu điểm: gọn, rõ ràng, nhanh. Với hosting dùng chung, đây là trở ngại.

Nginx hỗ trợ HTTP/3 qua QUIC từ phiên bản 1.25.0, tài liệu chính thức vẫn ghi tính năng này ở trạng thái thử nghiệm.

LiteSpeed: tương thích Apache, tốc độ kiểu Nginx

LiteSpeed Web Server cũng dùng kiến trúc hướng sự kiện, nhưng đọc được cấu hình Apache và .htaccess. Nhà cung cấp hosting có thể thay Apache bằng LiteSpeed mà khách không phải sửa gì. Điểm nổi bật là bộ nhớ đệm tích hợp LSCache, kết hợp với plugin cho WordPress và nhiều nền tảng khác.

LiteSpeed có hai phiên bản:

  • LiteSpeed Enterprise: bản thương mại, cần giấy phép trả phí. Đọc thay đổi .htaccess ngay lập tức.
  • OpenLiteSpeed: bản mã nguồn mở, miễn phí. Hỗ trợ quy tắc rewrite trong .htaccess, nhưng cần khởi động lại để áp dụng thay đổi, và không hỗ trợ đầy đủ mọi chỉ thị của Apache.

Bảng so sánh

Tiêu chíApacheNginxLiteSpeed
Kiến trúcTiến trình hoặc luồng, có chế độ eventHướng sự kiệnHướng sự kiện
.htaccessCó, đầy đủKhôngCó (Enterprise đầy đủ hơn OpenLiteSpeed)
Phục vụ file tĩnh, nhiều kết nốiKháRất tốtRất tốt
Cache tích hợpCó module, ít dùngFastCGI cache, proxy cacheLSCache, có plugin cho nhiều CMS
Giấy phépMã nguồn mở, miễn phíMã nguồn mở, có bản thương mạiEnterprise trả phí, OpenLiteSpeed miễn phí
Độ khó tự quản trịDễ, tài liệu rất nhiềuTrung bìnhTrung bình, có giao diện quản trị web
Hợp nhất vớiHosting dùng chung, ứng dụng cũVPS tự quản, proxy, ứng dụng hiện đạiHosting WordPress, người cần tương thích Apache

Điều quan trọng hơn chọn web server

Người ta hay tranh luận web server nào nhanh hơn vài phần trăm. Trên thực tế, những yếu tố sau thường ảnh hưởng lớn hơn:

  • Bộ nhớ đệm trang: trang được cache trả về gần như tức thì, dù web server nào.
  • Phiên bản PHP và OPcache: PHP mới, bật OPcache cho khác biệt rõ.
  • Cơ sở dữ liệu: truy vấn chậm, thiếu chỉ mục kéo cả hệ thống.
  • Ổ cứng và RAM: ổ chậm, thiếu RAM thì web server nhanh mấy cũng phải chờ.
  • Plugin và mã nguồn: một plugin viết tệ có thể ăn hết lợi thế của web server.

Mô hình kết hợp

Nhiều hệ thống dùng Nginx đứng trước làm proxy ngược và phục vụ file tĩnh, Apache phía sau xử lý PHP và .htaccess. Cách này giữ được tính tương thích của Apache và sức chịu tải của Nginx. Một số bảng điều khiển hosting cho phép bật mô hình này bằng vài cú nhấp.

Với ứng dụng Node.js, Python, Go, web server thường chỉ đóng vai proxy ngược phía trước ứng dụng, lo SSL, nén, giới hạn tốc độ. Nginx là lựa chọn phổ biến cho vai trò này.

Danh sách kiểm tra khi chọn

  1. Bạn dùng hosting dùng chung hay tự quản VPS?
  2. Website có phụ thuộc nhiều vào .htaccess không? Có quy tắc phức tạp từ plugin không?
  3. Bạn có quen sửa file cấu hình và đọc log lỗi không?
  4. Nền tảng là WordPress, framework PHP hay ứng dụng không phải PHP?
  5. Bảng điều khiển bạn định dùng hỗ trợ web server nào?
  6. Có ngân sách cho giấy phép thương mại không?

Nên chọn thế nào

  • Người mới, dùng hosting dùng chung: đừng bận tâm nhiều. Hosting chạy LiteSpeed kèm plugin cache cho WordPress, hoặc Apache sau Nginx đều ổn. Hãy chú ý cache và phiên bản PHP.
  • Tự quản VPS, chạy WordPress, cần .htaccess: OpenLiteSpeed hoặc Apache với PHP-FPM. Nếu quen cấu hình, Nginx kèm FastCGI cache là lựa chọn rất gọn.
  • Ứng dụng hiện đại, API, Node.js, nhiều kết nối đồng thời: Nginx làm proxy ngược.
  • Nhà cung cấp hosting, đại lý nhiều khách WordPress: LiteSpeed Enterprise đáng cân nhắc vì tương thích Apache và cache tích hợp, đổi lại chi phí giấy phép.

Web server là lễ tân. Lễ tân giỏi giúp khách sạn vận hành trơn tru, nhưng phòng bẩn, bếp chậm thì lễ tân nào cũng không cứu nổi.

Nguồn tham khảo