
http://vietjack.com/http/index.jsp Copyright © vietjack.com
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1
Mục lục
Giới thiệu về giao thức HTTP ................................................................................................ 5
Đối với độc giả ...................................................................................................................... 6
Điều kiện tiền đề ................................................................................................................... 6
Tổng quan về HTTP ............................................................................................................. 6
Các đặc trưng cơ bản ....................................................................................................... 6
Cấu trúc cơ bản ................................................................................................................ 7
Client ........................................................................................................................... 8
Server ......................................................................................................................... 8
Các tham số trong HTTP ...................................................................................................... 8
Phiên bản HTTP ............................................................................................................... 8
Ví dụ ............................................................................................................................ 8
Uniform Resource Identifiers - Bộ nhận diện nguồn tài nguyên đồng nhất ......................... 9
Ví dụ ............................................................................................................................ 9
Các định dạng Ngày/Thời gian ......................................................................................... 9
Các bộ ký tự ..................................................................................................................... 9
Ví dụ ............................................................................................................................ 9
Mã hóa nội dung ............................................................................................................. 10
Ví dụ .......................................................................................................................... 10
Các kiểu đa phương tiện (media types) .......................................................................... 10
Ví dụ .......................................................................................................................... 11
Các thẻ ngôn ngữ ........................................................................................................... 11
Ví dụ .......................................................................................................................... 11
Message trong HTTP ......................................................................................................... 11
Dòng đầu thông báo (start-line) ....................................................................................... 12
Các trường Header ........................................................................................................ 13
Phần thân thông báo ...................................................................................................... 14
Yêu cầu (Request) trong HTTP .......................................................................................... 14

http://vietjack.com/http/index.jsp Copyright © vietjack.com
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 2
Dòng Yêu cầu ................................................................................................................. 15
Method yêu cầu .............................................................................................................. 15
Request-URI ................................................................................................................... 16
Các trường Header Yêu cầu .......................................................................................... 17
Các ví dụ của Thông báo Yêu cầu .................................................................................. 19
Phản hồi (Response) trong HTTP ....................................................................................... 20
Dòng trạng thái ............................................................................................................... 20
Phiên bản HTTP ............................................................................................................. 21
Mã hóa trạng thái ............................................................................................................ 21
Các trường Header Phản hồi .......................................................................................... 22
Các ví dụ về Thông báo Phản hồi ................................................................................... 22
Phương thức trong HTTP ................................................................................................... 24
Phương thức GET .......................................................................................................... 25
Phương thức HEAD ....................................................................................................... 26
Phương thức POST ....................................................................................................... 27
Phương thức PUT .......................................................................................................... 28
Phương thức DELETE ................................................................................................... 29
Phương thức CONNECT ............................................................................................... 29
Phương thức OPTIONS ................................................................................................. 30
Phương thức TRACE ..................................................................................................... 30
Mã hóa trạng thái trong HTTP ............................................................................................. 31
1xx: Thông tin ................................................................................................................. 32
2xx: Thành công ............................................................................................................. 32
3xx: Sự điều hướng lại .................................................................................................... 33
4xx: Lỗi Client .................................................................................................................. 34
5xx: Lỗi Server ................................................................................................................ 36
Các trường Header trong HTTP ......................................................................................... 36
General Header .............................................................................................................. 37
Trường Cache-Control ........................................................................................... 37

http://vietjack.com/http/index.jsp Copyright © vietjack.com
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 3
Trường Connection ................................................................................................ 40
Trường Date ............................................................................................................ 40
Trường Pragma....................................................................................................... 41
Trường Trailer ......................................................................................................... 41
Trường Transfer-Encoding (Mã hóa truyền tải) ................................................. 41
Trường Upgrade ..................................................................................................... 41
Trường Via ............................................................................................................... 42
Trường Warning (Cảnh báo) ................................................................................ 42
Các trường Header yêu cầu trên Client........................................................................... 42
Trường Accept (Chấp nhận) ................................................................................. 42
Trường Accept-Charset ......................................................................................... 43
Trường Accept-Encoding ...................................................................................... 43
Trường Accept-Language ..................................................................................... 43
Trường Authorization (Sự ủy quyền) ................................................................... 44
Trường Cookie ........................................................................................................ 44
Trường Expect ........................................................................................................ 44
Trường From ........................................................................................................... 44
Trường Host ............................................................................................................ 45
Trường If-Match ...................................................................................................... 45
Trường If-Modified-Since ...................................................................................... 45
Trường If-None-Match ........................................................................................... 46
Trường If-Range ..................................................................................................... 46
Trường If-Unmodified-Since ................................................................................. 46
Trường Max-Forwards ........................................................................................... 47
Trường Proxy-Authorization .................................................................................. 47
Trường Range ......................................................................................................... 47
Trường Referer ....................................................................................................... 48
Trường TE ............................................................................................................... 48
Trường User-Agent ................................................................................................ 49

http://vietjack.com/http/index.jsp Copyright © vietjack.com
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 4
Các trường Phản hồi từ Server ....................................................................................... 49
Trường Accept-Ranges ......................................................................................... 49
Trường Age ............................................................................................................. 49
Trường ETag ........................................................................................................... 50
Trường Location ..................................................................................................... 50
Trường Proxy-Authenticate ................................................................................... 50
Trường Retry-After ................................................................................................. 51
Trường Server ......................................................................................................... 51
Trường Set-Cookie ................................................................................................. 51
Trường Vary ............................................................................................................ 52
Trường WWW-Authenticate .................................................................................. 53
Entity Headers ................................................................................................................ 53
Trường Allow ........................................................................................................... 53
Trường Content-Encoding .................................................................................... 53
Trường Content-Language ................................................................................... 54
Trường Content-Length ......................................................................................... 54
Trường Content-Location ...................................................................................... 54
Trường Content-MD5 ............................................................................................. 55
Trường Content-Range ......................................................................................... 55
Trường Content-Type ............................................................................................ 56
Trường Expires ....................................................................................................... 56
Trường Last-Modified ............................................................................................ 56
Caching trong HTTP ........................................................................................................... 56
Mã hóa URL trong HTTP .................................................................................................... 59
Bảo mật trong HTTP ........................................................................................................... 66
Sự rò rỉ thông tin cá nhân ................................................................................................ 66
Sự tấn công dựa trên các tên Path và File ...................................................................... 67
Việc đánh lừa DNS (DNS Spoofing) ............................................................................... 67
Vị trí các Header và việc đánh lừa ................................................................................... 68

http://vietjack.com/http/index.jsp Copyright © vietjack.com
http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 5
Ủy nhiệm xác minh ......................................................................................................... 68
Các sự ủy quyền và việc ghi vào bộ nhớ ẩn ................................................................... 68
Ví dụ về Message trong HTTP ............................................................................................ 68
Ví dụ 1 ............................................................................................................................ 68
Client yêu cầu: ......................................................................................................... 68
Server phản hồi: ...................................................................................................... 69
Ví dụ 2 ............................................................................................................................ 69
Client yêu cầu .......................................................................................................... 69
Server phản hồi ....................................................................................................... 69
Ví dụ 3 ............................................................................................................................ 70
Client yêu cầu .......................................................................................................... 70
Server phản hồi ....................................................................................................... 70
Ví dụ 4 ............................................................................................................................ 71
Client yêu cầu .......................................................................................................... 71
Server phản hồi ....................................................................................................... 71
Tài liệu tham khảo về HTTP ................................................................................................ 72
Các đường link hữu ích về HTTP ................................................................................... 72
Giới thiệu về giao thức HTTP
HTTP là viết tắt của Giao thức truyền tải siêu văn bản (Hypertext Transfer Protocol) là một giao
thức cấp độ ứng dụng cho các hệ thống thông tin phân phối, cộng tác và đa phương tiện. Đây là
nền tảng cho giao tiếp thông tin cho World Wide Web (ví dụ: Internet) từ 1990. HTTP là một giao
thức chung và stateless mà có thể được sử dụng cho các mục đích khác cũng như các sự mở
rộng của các phương thức yêu cầu, các code lỗi và Header của nó.
Phần hướng dẫn này được xây dựng trên cơ sở các chi tiết kỹ thuật RFC-2616, mà xác định giao
thức có liên quan như HTTP/1.1. HTTP/1.1 là một phiên bản của HTTP ban đầu (HTTP/1.0). Sự
khác biệt lớn giữa HTTP/1.0 và HTTP/1.1 là HTTP/1.0 sử dụng một kết nối mới cho mỗi Yêu

