Web server là gì? Cách thức hoạt động và các loại máy chủ web phổ biến

Web server là gì? Cách thức hoạt động và các loại máy chủ web phổ biến

Tác giả: Admin
16:11 07/03/2022

Trong quá trình truy cập website, mọi dữ liệu hiển thị trên trình duyệt đều được xử lý và phản hồi thông qua một hệ thống trung gian gọi là web server (máy chủ web). Đây là thành phần đóng vai trò quan trọng trong việc lưu trữ file trang web, xử lý yêu cầu từ clienttruyền tải nội dung qua giao thức HTTP. Để đảm bảo quá trình này diễn ra tốt nhất, web server cần tuân thủ một quy trình xử lý bài bản và hiệu quả. Vậy chính xác, web server là gì, và cơ chế hoạt động của nó cụ thể ra sao? Cùng FPT Cloud khám phá chi tiết trong bài viết dưới đây.

1. Web server là gì?

Web server (máy chủ web) là một hệ thống bao gồm phần mềmphần cứng dùng để lưu trữ, xử lý và phân phối nội dung website đến người dùng thông qua giao thức HTTP hoặc HTTPS. Khi users truy cập một trang web bằng trình duyệt, trình duyệt sẽ gửi yêu cầu (request) đến web server. Web server sẽ tiếp nhận yêu cầu đó, xử lý và gửi lại phản hồi (response) lại nội dung, đây thường là các tệp HTML, CSS, JavaScript hoặc hình ảnh nhằm hiển thị nội dung website cho người dùng.

Khái niệm cơ bản nhất về máy chủ web
Khái niệm cơ bản nhất về máy chủ web


Về mặt phần mềm, web server là một chương trình chạy trên máy chủ như
Apache, Nginx, Microsoft IIS, Apache Tomcat hoặc Lighttpd, chịu trách nhiệm xử lý các yêu cầu từ phía client. Đối với phần cứng cứng, máy chủ web là một máy tính được kết nối mạng, có khả năng lưu trữ dữ liệu và xử lý nhiều yêu cầu từ phía client cùng lúc. Để giải quyết được nhu cầu truy cập từ phía người dùng một cách tốt nhất, nhiều doanh nghiệp lựa chọn dịch vụ cho thuê máy chủ vật lý (server vật lý) để xây dựng hạ tầng riêng biệt nhằm đảm bảo được hiệu suất và tính ổn định.

Web server hoạt động như trung gian giữa người dùng và các tài nguyên web, đóng vai trò then chốt trong việc đảm bảo tính sẵn sàng, bảo mật và tốc độ truy cập của một website.

2. Cơ chế hoạt động của web server

Web server hoạt động dựa trên mô hình kiến trúc client-server (máy khách – máy chủ). Trong mô hình này, máy khách (client), thường là trình duyệt web trên thiết bị của người dùng, sẽ gửi yêu cầu (request) đến máy chủ (server), và máy chủ xử lý yêu cầu đó, sau đó trả về kết quả (response) tương ứng.

Cách thức hoạt động của Web Server dựa trên mô hình Client - Server
Cách thức hoạt động của Web Server dựa trên mô hình Client - Server


Cụ thể 4 bước hoạt động cơ bản của máy chủ web trong mô hình client-server là:

  • Bước 1: Trình duyệt chuyển tên miền (domain) thành địa chỉ IP (IP address)
  • Bước 2: Trình duyệt (client) gửi yêu cầu đến máy chủ (server)
  • Bước 3: Máy chủ phản hồi và gửi dữ liệu về cho trình duyệt
  • Bước 4: Trình duyệt hiển thị nội dung website cho người dùng

2.1. Trình duyệt chuyển tên miền (domain) thành địa chỉ IP (IP address)

Trước khi trình duyệt có thể gửi bất kỳ yêu cầu nào đến một web hosting, nó cần biết được địa chỉ truy cập chính xác của web server đó trên Internet. Mặc dù chúng ta quen thuộc với việc gõ các tên miền (domain names) dễ nhớ như google.com hay fptcloud.com, máy tính và các thiết bị mạng lại không hiểu những tên miền này dưới dạng chuỗi thông thường mà thông qua một dãy số được gọi là địa chỉ IP, domain và địa chỉ IP được lưu trữ trong DNS (Domain Name System).

DNS: Domain Name System
DNS: Domain Name System


2.2. Trình duyệt (client) gửi yêu cầu đến máy chủ (server)

Sau khi đã có được địa chỉ IP của web hosting từ DNS, browsers lúc này đã sẵn sàng để giao tiếp trực tiếp với máy chủ. Đây là lúc giao thức HTTP (Hypertext Transfer Protocol), hoặc phiên bản bảo mật hơn là HTTPS (Hypertext Transfer Protocol Secure), thực hiện lấy yêu cầu từ URL cụ thể mà người dùng đang gửi requests.

Giao thức HTTP và HTTPs giao tiếp với Web Server
Giao thức HTTP và HTTPs giao tiếp với Web Server


2.3. Máy chủ phản hồi và gửi dữ liệu về cho trình duyệt

Sau khi nhận được yêu cầu HTTP/HTTPS từ trình duyệt, web server sẽ xử lý yêu cầu đó và chuẩn bị một phản hồi để gửi lại cho phía trình duyệt. Giả sử nếu yêu cầu phía trình duyệt là một trang tĩnh (ví dụ: .html, .css, .jpg), web server sẽ tìm kiếm tệp tin đó trong hệ thống lưu trữ của mình hay yêu cầu là một trang động (ví dụ: .php, .asp, .jsp, .py), máy chủ sẽ chuyển yêu cầu này đến một ứng dụng máy chủ (application server) hoặc bộ thông dịch để xử lý logic (ví dụ: truy vấn cơ sở dữ liệu, thực hiện các tính toán, tạo ra nội dung HTML). Để quản lý và truy vấn hiệu quả các loại dữ liệu phức tạp này, các ứng dụng thường được doanh nghiệp sử dụng hệ quản trị cơ sở dữ liệu như PostgreSQL.

HTTP Response gồm 3 thành phần: HTTP Status Line, HTTP Response Headers và HTTP Response Body
HTTP Response gồm 3 thành phần: HTTP Status Line, HTTP Response Headers và HTTP Response Body


Sau khi tìm thấy hoặc tạo ra tài nguyên, web server sẽ xây dựng một
HTTP Response để gửi về trình duyệt. Một HTTP Response bao gồm: Dòng trạng thái (Status Line), Header (Response Headers)Body (Response Body)

2.4. Trình duyệt hiển thị nội dung website cho người dùng

Đây là bước cuối cùng trong cách thức hoạt động của máy chủ web, khi tất cả dữ liệu đã được truyền tải và trình duyệt thực hiện nhiệm vụ của mình để biến những dòng mã thành một giao diện trực quan mà người dùng có thể nhìn thấy, sử dụng và tương tác, quá trình này diễn ra trong thời gian rất ngắn chỉ vài mili giây. Đây là một chu trình liên tục, mỗi khi người dùng nhấp vào một liên kết hoặc gửi một biểu mẫu, quá trình này lại được lặp lại.

Super deal 032023

3. Một số loại Web Server thường được doanh nghiệp, cá nhân sử dụng

Các loại web server phổ biến được sử dụng nhiều nhất hiện nay là:

  • Máy chủ web mã nguồn mở Apache HTTP Server
  • Web server Nginx
  • Web server IIS
  • Máy chủ Apache Tomcat
  • Máy chủ web mã nguồn mở Lighttpd

3.1 Máy chủ web mã nguồn mở Apache HTTP Server

Phần mềm máy chủ mã nguồn mở Apache
Phần mềm máy chủ mã nguồn mở Apache

Apache HTTP Server, thường được gọi đơn giản là Apache, là một phần mềm máy chủ web mã nguồn mở nổi tiếng và có ảnh hưởng sâu rộng trong lịch sử Internet. Được phát triển và duy trì bởi Apache Software Foundation, Apache không chỉ là một trong những application server lâu đời nhất mà còn là một trong những web server được sử dụng rộng rãi nhất trên toàn cầu trong nhiều thập kỷ dành cho các lập trình viên và những nhà phát triển.

Thuộc tính Giá trị
Nhà phát triển Apache Software Foundation
Phiên bản ổn định Phiên bản 1.3.37 / 28 tháng 7 2006

 

Phiên bản 2.0.59 / 28 tháng 7 2006

 

Phiên bản 2.2.4 / 10 tháng 1 2007

Kho mã nguồn https://github.com/apache/httpd
Hệ điều hành Đa hệ (Windows, Linux, MacOS…)
Thể loại Web Server
Giấy phép Apache
Website chính thức http://httpd.apache.org/

Bảng 3.1: Tổng hợp thông tin về Apache HTTP Server

3.2. Web server Nginx

Nginx Server là một phần mềm máy chủ web mã nguồn mở mạnh mẽ và đa năng, được thiết kế để không chỉ hoạt động như một web server hiệu suất cao mà còn đảm nhiệm nhiều vai trò quan trọng khác trong kiến trúc web hiện đại như reverse proxy (proxy ngược), load balancer (bộ cân bằng tải), mail proxy và HTTP cache. Nginx được tạo ra bởi Igor Sysoev và chính thức phát hành công khai vào năm 2004. Kể từ đó, nó đã trở thành một trong những web server được sử dụng phổ biến nhất thế giới.

Máy chủ Web Server Nginx
Máy chủ Web Server Nginx

 

Thuộc tính Giá trị
Tác giả gốc Igor Sysoev
Nhà phát triển F5
Ngày phát hành đầu tiên 4 tháng 10 năm 2004
Phiên bản ổn định Phiên bản 1.28.0 / 23 tháng 4 năm 2025
Kho mã nguồn github.com/nginx/nginx
Ngôn ngữ lập trình C
Hệ điều hành Các biến thể BSD, HP-UX, IBM AIX, Linux, macOS, Solaris, Microsoft Windows, và các phiên bản *nix khác
Thể loại Máy chủ web, máy chủ proxy ngược/mai
Giấy phép Nginx: BSD-2-Clause License<br>Nginx Plus: Phần mềm độc quyền
Website chính thức nginx.org

Bảng 3.2: Tổng hợp thông tin về máy chủ web mã nguồn mở đa năng NGINX

3.3. Web server IIS

Máy chủ web Microsoft IIS (Internet Information Services)
Máy chủ web Microsoft IIS (Internet Information Services)


Microsoft Internet Information Services (Microsoft IIS)
là một Web server mạnh mẽ, linh hoạt, bảo mật và dễ quản lý, được phát triển bởi Microsoft dành cho môi trường của Windows Server. IIS đóng vai trò trung tâm trong việc lưu trữ và phân phối đa dạng các loại nội dung web. Nó được thiết kế với kiến trúc mở và có khả năng mở rộng, cho phép xử lý các tác vụ đòi hỏi cao như truyền tải media (media streaming) hay chạy các ứng dụng web phức tạp. 

IIS hiện đang là à một trong những thành phần cốt lõi của hệ sinh thái Windows Server, bao gồm một số dịch vụ cơ bản như web server, FTP server. IIS tích hợp sâu rộng với các công nghệ của Microsoft.

3.4. Máy chủ Apache Tomcat

Máy chủ Apache Tomcat
Máy chủ Apache Tomcat

Apache Tomcat không phải là một web server đa năng như Apache HTTP Server hay Nginx. Thay vào đó, Apache Tomcat là một máy chủ ứng dụng (application server) mã nguồn mở, được nghiên cứu và phát triển bởi Apache Software Foundation, chuyên biệt để triển khai các ứng dụng web được viết bằng Java ServletJavaServer Pages (JSP). Việc xây dựng và tối ưu các ứng dụng này là một khía cạnh quan trọng của lập trình web server, đặc biệt trong môi trường Java.

Apache Tomcat hoạt động cực ổn định, tích hợp đầy đủ tính năng thương mại kèm giấy phép mã nguồn mở. Đồng thời hỗ trợ đầy đủ hệ điều hành quen thuộc như Linux, Windows, Mac,.. Với vai trò là một máy chủ ứng dụng, Apache Tomcat thường được sử dụng làm nền tảng để triển khai các Web services, cho phép các ứng dụng khác nhau trên Internet tương tác và trao đổi dữ liệu một cách có cấu trúc và đáng tin cậy.

Thuộc tính Giá trị
Tác giả gốc James Duncan Davidson
Nhà phát triển The Apache Software Foundation
Ngày phát hành đầu tiên Năm 1999
Phiên bản ổn định Phiên bản 11.0.7 / 13 tháng 5 năm 2025
Kho mã nguồn https://github.com/apache/tomcat
Ngôn ngữ lập trình Java
Thể loại Servlet container, HTTP web server
Giấy phép Apache-2.0
Website chính thức https://tomcat.apache.org/

Bảng 3.3: Tổng hợp thông tin về máy chủ web Apache Tomcat

3.5. Máy chủ web mã nguồn mở Lighttpd (Lighttpd Open Source Web Server)

Lighttpd - một phần mềm máy chủ với mã nguồn mở, hoàn toàn miễn phí, có tính linh hoạt cao. Ưu điểm lớn của Lighttpd là rất tiết kiệm tài nguyên, yêu cầu cấu hình vừa phải. Phần mềm này được viết theo ngôn ngữ lập trình C, tương thích với tất cả các hệ điều hành phổ biến (Windows, Linux, Mac OS).

Lighttpd Open Source Web Server
Lighttpd Open Source Web Server

 

Thuộc tính Giá trị
Tác giả gốc Jan Kneschke
Ngày phát hành đầu tiên Tháng 3 năm 2003
Phiên bản ổn định Phiên bản 1.4.79 / 4 tháng 4 năm 2025
Phiên bản xem trước Phiên bản 1.4.79 / 4 tháng 4 năm 2025
Kho mã nguồn git.lighttpd.net/lighttpd
Ngôn ngữ lập trình C
Ngôn ngữ có sẵn Tiếng Anh
Thể loại Máy chủ web
Giấy phép BSD-3-Clause
Website chính thức www.lighttpd.net

Bảng 3.4: Tổng hợp thông tin về Open Source Web Server: Lighttpd

4. Phần cứng và phần mềm của web server

Để một Web Server có thể hoạt động hiệu quả và phục vụ hàng tỷ yêu cầu từ khắp nơi trên Internet, nó cần sự kết hợp chặt chẽ giữa phần cứng mạnh mẽ và phần mềm chuyên dụng. Cả hai thành phần này đều đóng vai trò thiết yếu, không thể thiếu trong việc biến một yêu cầu duyệt web của người dùng thành nội dung hiển thị trên màn hình.

>> Xem thêm: Host là gì? Toàn tập kiến thức về Host từ A đến Z

4.1. Phần cứng của máy chủ web

Phần cứng của một Web Server (Web server hardware) về cơ bản là một hệ thống máy tính vật lý được thiết kế và tối ưu hóa để hoạt động liên tục 24/7 và xử lý một lượng lớn tác vụ. Nó khác với máy tính cá nhân thông thường ở khả năng chịu tải, độ bền và tốc độ xử lý.

Phần cứng của một Web Server (Web server hardware) về cơ bản là một hệ thống máy tính vật lý được thiết kế và tối ưu hóa để hoạt động liên tục 24/7 và xử lý một lượng lớn tác vụ. Nó khác với máy tính cá nhân thông thường ở khả năng chịu tải, độ bền và tốc độ xử lý
Phần cứng của một Web Server (Web server hardware)

Các thành phần cốt lõi của phần cứng máy chủ web như:

  • Bộ vi xử lý (CPU)
  • Bộ nhớ RAM (Random Access Memory)
  • Ổ cứng (Storage)
  • Giao diện mạng (Network Interface Card - NIC)
  • Hệ thống làm mát
  • Nguồn điện dự phòng (Power Supply Unit - PSU & UPS)

4.2. Phần mềm của máy chủ web

Phần mềm web server (Web server software) là chương trình chạy trên phần cứng kể trên, có nhiệm vụ chính là nhận các yêu cầu HTTP từ trình duyệt của người dùng, tìm kiếm các tệp tin được yêu cầu trên ổ cứng của server và phản hồi hay gửi trở lại trình duyệt. Một số phần mềm web phổ biến mà FPT Cloud đã đề cập ở phía trên: Apache, NGINX, Microsoft IIS và Apache Tomcat và Lighttpd.

Phần mềm của máy chủ có chức năng theo dõi người dùng web khi họ truy cập đến file host từ ít nhất một HTTP server. Mỗi HTTP server lại tương ứng với phần mềm có khả năng đọc URLs. Mọi trình duyệt đều cần đến file host chạy trên web server. Thông thường, trình duyệt đó sẽ gửi yêu cầu file qua HTTP. Nếu một yêu cầu gửi đến đích xác web server, HTTP cũng lập tức gửi muốn yêu cầu phản hồi. Để đơn giản hóa quá trình cài đặt và tích hợp nhiều thành phần cần thiết như Apache, MySQL, PHP Perl vào một gói duy nhất cho môi trường phát triển web cục bộ, XAMPP là một giải pháp được các sinh viên, lập trình viên web, nhà phát triển ưu tiên lựa chọn.