HTTP là gì? Định nghĩa, cách hoạt động và phân biệt với HTTPS

Những điểm chính trong bài viết

 

  • HTTP là gì: Giải thích khái niệm và vai trò nền tảng của HTTP trên web.

 

  • Cách hoạt động của HTTP: Mô hình Request – Response giữa trình duyệt và máy chủ.

 

  • Đặc điểm nổi bật: Ba yếu tố quan trọng tạo nên sự phổ biến của HTTP.

 

  • Cấu trúc & kết nối: HTTP giao tiếp ra sao và các bước phát triển qua các phiên bản.

 

  • So sánh HTTP và HTTPS: Điểm khác biệt về bảo mật.

 

  • Mã trạng thái HTTP phổ biến: Ý nghĩa của các mã 200, 404, 500…

 

HTTP là gì?

 

HTTP (HyperText Transfer Protocol) là giao thức truyền tải siêu văn bản, đóng vai trò cầu nối giữa trình duyệt (Client)máy chủ web (Server). HTTP hoạt động ở lớp ứng dụng trong mô hình TCP/IP và chính là “ngôn ngữ chung” giúp client và server trao đổi dữ liệu như:

 

  • Trang HTML

 

  • Hình ảnh

 

  • Video

 

  • File CSS, JavaScript...

 

Hãy hình dung bạn đến thư viện (server) và yêu cầu mượn sách. HTTP chính là cách bạn giao tiếp với thủ thư để lấy đúng cuốn sách mình cần.

 

http, https, website

 

Cơ chế hoạt động của HTTP

 

HTTP được xây dựng theo mô hình Client – Server.

 

Client

 

  • Thường là trình duyệt web.

 

  • Gửi yêu cầu (HTTP Request) khi bạn nhập URL hoặc nhấp vào một liên kết.

 

Server

 

  • Lắng nghe các yêu cầu gửi đến.

 

  • Trả lại phản hồi (HTTP Response) tương ứng.

 

Chu trình Request – Response gồm 4 bước

 

1. Client gửi HTTP Request

 

Khi bạn truy cập website:

 

  • Trình duyệt sẽ tạo một request gửi đến đúng IP của server.

 

  • Request bao gồm:

    • Method (GET, POST…)

    • Headers (trình duyệt, cookies, ngôn ngữ…)

    • Body (dữ liệu form nếu là POST)

 

2. Server xử lý yêu cầu

 

  • Phân tích request

 

  • Truy vấn database, chạy mã back-end, đọc file…

 

3. Server trả về HTTP Response

 

Phản hồi bao gồm:

 

  • Status Code (200, 404, 500…)

 

  • Headers

 

  • Body (HTML, CSS, JS, hình ảnh…)

 

4. Trình duyệt hiển thị nội dung

 

Trình duyệt nhận phản hồi, phân tích và render trang ra cho người dùng xem.

 

Đặc điểm nổi bật của HTTP

 

1. Đơn giản, dễ hiểu

 

Cấu trúc HTTP được thiết kế đơn giản, dễ đọc và dễ debug.


Ngay cả HTTP/2 dù thêm frame phức tạp nhưng vẫn giữ tính dễ hiểu.

 

2. Khả năng mở rộng cao

 

HTTP hỗ trợ mở rộng thông qua hệ thống header.


Chỉ cần thêm một header mới là có thể bổ sung chức năng mới mà không cần thay đổi giao thức cốt lõi.

 

3. Stateless (không trạng thái)

 

  • Mỗi request là độc lập và server không ghi nhớ request trước đó.

 

  • Tuy nhiên, các công nghệ như Cookies, Session, JWT giúp duy trì phiên làm việc (ví dụ: giỏ hàng, đăng nhập).

 

Cấu trúc giao tiếp và kết nối HTTP

 

1. Cấu trúc Request – Response

 

Client gửi request → Server trả response.


Mỗi thông điệp là một đơn vị riêng biệt — HTTP không duy trì luồng liên tục.

 

http, https, website

 

2. Lớp kết nối bên dưới HTTP

 

HTTP hoạt động dựa trên các giao thức truyền tải, chủ yếu là TCP.

 

Sự cải tiến qua các phiên bản:

 

Phiên bản Đặc điểm
HTTP/1.0 Mỗi request mở 1 kết nối TCP → rất chậm
HTTP/1.1 Kết nối liên tục (persistent connection) → tái sử dụng TCP
HTTP/2 Hỗ trợ multiplexing → nhiều request song song trên 1 kết nối
HTTP/3 (QUIC) Dựa trên UDP, tối ưu tốc độ và ổn định hơn trong mạng yếu

 

 

HTTP vs HTTPS – Khác biệt quan trọng

 

Điểm khác biệt lớn nhất: HTTPS có mã hóa dữ liệu, HTTP thì không.

 

HTTPS sử dụng SSL/TLS để mã hóa dữ liệu trước khi gửi qua Internet, giúp:

 

  • Chống nghe lén

 

  • Ngăn chỉnh sửa dữ liệu

 

  • Xác thực đúng máy chủ

 

Với HTTP, dữ liệu gửi đi là plain text, kẻ xấu có thể đọc được.

 

Bảng so sánh nhanh

 

Đặc điểm HTTP HTTPS
Tên đầy đủ Hypertext Transfer Protocol Hypertext Transfer Protocol Secure
Cổng mặc định 80 443
Bảo mật Không mã hóa Mã hóa SSL/TLS
Yêu cầu chứng chỉ Không Bắt buộc có SSL
Trình duyệt hiển thị Có thể báo “Not Secure” Hiển thị ổ khóa bảo mật

 

Các mã trạng thái HTTP phổ biến

 

1xx – Thông tin

 

Server đã nhận yêu cầu và đang xử lý. (Ít gặp)

 

2xx – Thành công

 

  • 200 OK: Thành công, tài nguyên được trả về

 

3xx – Chuyển hướng

 

  • 301 Moved Permanently: Chuyển vĩnh viễn sang URL mới

 

  • 302/307: Chuyển hướng tạm thời

 

4xx – Lỗi phía Client

 

  • 403 Forbidden: Không có quyền truy cập

 

  • 404 Not Found: Không tìm thấy tài nguyên

 

5xx – Lỗi phía Server

 

  • 500 Internal Server Error: Lỗi chung

 

  • 503 Service Unavailable: Server quá tải hoặc bảo trì

 HỖ TRỢ TRỰC TUYẾN