HTTP HEADER LÀ GÌ

     

HTTP là viết tắt của HyperText Transfer Protocol. Là một trong những giao thức cơ phiên bản mà World Wide Web áp dụng (như chúng ta thấy, tất cả các showroom web đều sở hữu phần mở màn là http:// hoặc https://). HTTP xác minh cách các thông điệp (như những file văn bản, hình hình ảnh đồ hoạ, âm thanh, video, và những file multimedia ...) được định dạng cùng truyền cài đặt ra sao, với những hành vi nào mà những Webserver và những trình lưu ý web (browser) phải làm để đáp ứng lại.

Bạn đang xem: Http header là gì

HTTP Header là một phần cốt lõi của HTTP Request và HTTP Response, trong những HTTP Header hầu như kèm theo các thông tin phản hồi và yêu mong của phía client và server.


*

Các phương thức truy vấn của HTTP

GET

Phương thức này dùng để làm truy xuất những tập tin như HTML, CSS, Javascript cùng hình hình ảnh ...

Ví dụ, khi truy cập vào địa chỉ cửa hàng example.com/tutorials, dòng đầu tiên trong HTTP Request của bạn sẽ có dạng như sau:

GET /tutorials/ HTTP/1.1POST

Phương thức này dùng để làm gửi tài liệu đến server. Cách thức POST thường được gửi mang đến server bên dưới dạng form, ví dụ:

Lúc này HTTP Request sẽ có được dạng như sau:

POST /login.php HTTP/1.1Host: example.comUser-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-us,en;q=0.5Accept-Encoding: gzip,deflateAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7Keep-Alive: 300Connection: keep-aliveReferer: http://example.com/test.phpContent-Type: application/x-www-form-urlencodedContent-Length: 43first_name=John&last_name=Doe&action=Submit

HEADPhương thức này dùng để mang thông tin về các header. Cách buổi giao lưu của HEAD tương tự như GET. Tuy nhiên phía hệ thống chỉ trả về những thông tin của header, ví dụ:

HTTP/1.1 200 OKDate: Mon, 18 Aug 2013 22:44:11 GMTServer: Apache/1.3.26 (Unix)Expires: Thu, 19 Nov 1981 08:52:00 GMTPragma: no-cacheContent-Language: ENConnection: closeContent-Type: text/html; charset=ISO-8859-1PUT

Phương thức này dùng để làm upload 1 tệp tin nào đó lên server.

OPTIONS

Khi áp dụng phương thức này phía vps sẽ ý kiến một cái Allow kèm theo các phương thức mà lại phía client có thể sử dụng, ví dụ:

HTTP/1.1 200 OKServer: Microsoft-IIS/5.0Date: Tue, 31 Oct 2013 08:00:29 GMTConnection: closeAllow: GET, HEAD, POST, TRACE, OPTIONSContent-Length: 0

HTTP Status Code

Trong từng HTTP Response đông đảo chứa một status code, những status code này cho biết thêm kết quả truy vấn cơ mà server trả về. Những status code được phân thành 5 nhóm:

1xx: Thông tin.2xx: truy tìm vấn thành công.3xx: Client được chuyến hướng (redirect) mang lại một địa chỉ cửa hàng web khác.4xx: truy hỏi vấn này có lỗi.5xx: Server phát hiện lỗi vào khi thực hiện truy vấn.200 OK

Truy vấn thành công.

301 Moved Permanently

URL được yêu cầu đã gửi vĩnh viễn cho tới một URL bắt đầu và trong tương lai, nếu client muốn truy cập tài nguyên của URL này thì cần sử dụng URL sẽ được chuyển làn phân cách (redirect).

304 Not Modified

Chỉ dẫn trình chăm nom sử dụng bạn dạng sao của trang web trong bộ nhớ lưu trữ cache mà trình chuyên chú đã lưu trong đợt truy cập trước đó.

400 Bad Request

Bạn sẽ bắt gặp status code này nếu như nhờ cất hộ một truy hỏi vấn không hợp lệ lên web server.

401 Unauthorized

Nếu như truy cập vào một website yêu mong nhập mật khẩu đăng nhập và bạn sẽ thấy status code này nếu như như nhập sai.

403 Forbidden

Bạn sẽ nhận thấy status code này truy cập vào một địa chỉ cấm của Server. Địa chỉ web này không được phép tróc nã cập.


*

*

405 Method Not Allowed

Bạn đang thực hiện một cách tiến hành mà web hệ thống không hỗ trợ. Ví dụ nếu như khách hàng sử dụng phương thức POST mà web server không cung cấp thì các bạn sẽ thấy status code này.

500 Internal server Error

Server đã phát hiện lỗi trong khi tiến hành truy vấn được giữ hộ từ phía client.


*

503 Service Unavailable

Ứng dụng trên server không bình luận lại tróc nã vấn của client hoặc có thể ứng dụng này không vận động nữa.


*

HTTP Request

Toàn bộ những thông tin của HTTP Request với HTTP Response đều bao gồm 1 hoặc nhiều những header. Được giải pháp nhau bởi mỗi dòng riêng biệt. Lấy ví dụ như sau của HTTP Request:

GET /books/search.asp?q=example HTTP/1.1Accept: image/gif, image/xxbitmap, image/jpeg, image/pjpeg, application/xshockwaveflash, application/vnd.msexcel,application/vnd.mspowerpoint, application/msword, */*Referer: http://example.com/books/default.aspAccept-Language: en-gb,en-us;q=0.5Accept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)Host: example.comCookie: lang=en; JSESSIONID=0000tI8rk7joMx44S2Uu85nSWc_:vsnlc502Dòng đầu tiên cho biết đang thực hiện phương thức GET. Phiên bạn dạng HTTP được thực hiện là 1.1, những phiên phiên bản của HTTP bao gồm 1.0 cùng 1.1. Các trình xem xét web khoác định thực hiện phiên phiên bản 1.1.Referer mang đến ta hiểu được URL bên trên có bắt đầu từ showroom nào. Ở lấy ví dụ trên Referer cho thấy truy vấn /books/search.asp?q=example được nhờ cất hộ từ showroom http://example.com/books/default.aspHost cho biết bạn đã gửi tầm nã vấn mang lại host nào. Điều này rất có lợi nếu như nhiều trang web cùng đặt bình thường 1 web server.Cookie được gởi lại lên web vps nếu như trước đó đây đang từng truy cập vào showroom này.

HTTP Response

Sau lúc client gởi HTTP Request lên hệ thống thì server đã gửi lại HTTP Response.

Xem thêm: Link Download File Bản Đồ Việt Nam Vector Bản Đồ Việt Nam Đơn Giản

Ví dụ:

HTTP/1.1 200 OKDate: Tue, 17 Dec 2013 03:30:53 GMTServer: IBM_HTTP_SERVER/1.3.26.2 Apache/1.3.26 (Unix)Set-Cookie: tracking=tI8rk7joMx44S2Uu85nSWcPragma: no-cacheExpires: Thu, 01 Jan 1970 00:00:00 GMTContent-Type: text/html;charset=ISO-8859-1Content-Language: en-USContent-Length: 24246Dòng thứ nhất là phiên phiên bản HTTP 1.1 được sử dụng. Một status code là 200 cho thấy thêm là tróc nã vấn này thành công.Server cho biết thêm thông tin về website server. Ở ví dụ trên web hệ thống được áp dụng là Apache và hệ điều hành Unix. Mặc dù thông tin về website server hoàn toàn có thể không thiết yếu xác.Pragma nghỉ ngơi ví dụ cho thấy thêm trình coi ngó web không giữ trữ những phản hồi (response) nào trong bộ nhớ lưu trữ cache.Content-Type cho biết thêm rằng phần thông tin trên gồm bao gồm HTML.Content-Length cho thấy thêm độ lâu năm của gói tin phản hồi từ phía server giữ hộ về, được xem bằng byte.

HTTP Header vào HTTP Request

Accept-EncodingAccept-Encoding: gzip,deflate

Thông báo cho web server biết là phía client chấp nhận loại format mã hoá nào.

Ví dụ trên cho thấy thêm là phía client gật đầu định dạng gzip, việc này có thể làm tiết kiệm chi phí băng thông.

Accept-LanguageAccept-Language: en-gb,en-us;q=0.5

Header cho thấy ngôn ngữ mang định của phía client. Trường hợp như trang web có tương đối nhiều ngôn ngữ thì phía client sẽ tiến hành chuyển đào bới ngôn ngữ phù hợp hơn.

If-Modified-Since

Nếu như nội dung trang web được trình duyệt giữ gìn trong bộ nhớ lưu trữ cache. Cùng lần sau nếu truy vấn nữa thì trình chú tâm sẽ gửi:

If-Modified-Since: Sat, 28 Nov 2009 06:38:19 GMT

Nếu như không có ngẫu nhiên thay đổi nào thì server vẫn gửi một status code 304. Sau đó trình chú ý sẽ load nội dung được lưu giữ trong bộ nhớ cache đã lưu trước đó.

User AgentUser-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)

Đoạn header trên có thể cho ta biết về thông tin sau: trình duyệt, hệ điều hành. Đây đó là lý do vì sao các web vps biết người dùng đang sử dụng hệ điều hành và quản lý và trình trông nom gì. Ví dụ trường hợp như web vps phát hiện người tiêu dùng đang sử dụng trình để mắt tới trên điện thoại thông minh thì sẽ chuyển hướng đến phiên bản mobile của trang web.

CookieCookie: lang=en; JSESSIONID=0000tI8rk7joMx44S2Uu85nSWc_:vsnlc502

Nếu như trước đó bạn đã truy cập vào một trang web nào đó thì cookie này sẽ gửi lên web server.

Host

Tên hostname nhưng mà phía client ước ao gửi HTTP Request. Hostname này bao hàm domain và subdomain.

Vd:

Host: example.comReferer

Nếu như bạn truy vấn vào showroom example.com/books/default.asp cùng click ngẫu nhiên liên kết như thế nào thì Referer Header đang là:

Referer: http://example.com/books/default.asp

HTTP Header trong HTTP Response

Content-Length

Web server thông tin cho phía client về dung lượng của gói tin gửi cho phía client. Điều này rất tốt cho việc download vì trình duyệt rất có thể dự đoán mất bao nhiêu thời gian để download. Ví dụ:

Content-Length: 24246Content-Type

Header này cho biết thêm thông tin về định hình của văn bản. Ví dụ trường hợp như là 1 trang html thì kết quả sẽ trả về là:

Content-Type: text/html;charset=ISO-8859-1

text/html là một trong trong những định dạng thường chạm mặt nhiều. Trong khi header này còn có định bề ngoài ảnh:

Content-Type: image/gifContent-Encoding

Header này trả về một format mã hoá nội dung, ví dụ:

Content-Encoding: gzipEtag

Header này dùng để làm lưu trữ bộ nhớ lưu trữ trong cache, ví dụ:

Etag: "pub1259380237;gz"

Khi server gởi header này mang đến phía client thì trình chuẩn y sẽ lưu giữ giá trị này lại. Lần sau nếu như như còn truy cập tiếp thì trình chú tâm sẽ gửi HTTP Request sau:

If-None-Match: "pub1259380237;gz"

Nếu như giá trị của header này hợp với server thì client thừa nhận status code 304. Bây giờ trình để ý sẽ load nội dụng từ trong bộ nhớ cache mà không yêu cầu nhờ cho tới server.

Expires

Thông báo đến trình chăm sóc biết các nội dung này còn có hiệu lực trong bao lâu kể từ khi phía server phản hồi lại, ví dụ:

Expires: Thu, 01 Jan 1970 00:00:00 GMTLast-Modified

Lần sau cùng đoạn văn phiên bản được chỉnh sửa, thời gian định dạng vào GMT, ví dụ:

Last-Modified: Sat, 28 Nov 2009 03:50:37 GMTLocation

Header này được áp dụng để chuyển làn (redirect). Với status code là 301 hoặc 302.

Pragma

Cho phép trình duyệt đã đạt được lưu vào trong bộ lưu trữ cache không. Ví dụ:

Pragma: no-cacheSet-CookieSet-Cookie: tracking=tI8rk7joMx44S2Uu85nSWc

Web server sẽ gửi cookie cho phía client với phía client sẽ gửi cookie đó lại cho website server trong các lần truy cập tiếp theo.

Xem thêm: Tổng Hợp Kem Vinamilk Hộp Lớn Gia Bảo Nhiều, Kem Vinamilk Chính Hãng Giá Tốt Tại Bachhoaxanh

ServerServer: IBM_HTTP_SERVER/1.3.26.2 Apache/1.3.26 (Unix)

Cung cấp thông tin về server với hệ điều hành được sử dụng.