เมื่อเว็บเซิร์ฟเวอร์ตอบสนองคำขอ HTTP การตอบสนองทั่วไปประกอบด้วย Status Line, Response Headers บางส่วน บรรทัดว่าง และเอกสาร การตอบสนองทั่วไปมีลักษณะดังนี้ -
HTTP/1.1 200 OK Content-Type: text/html Header2: ... ... HeaderN: ... (Blank Line) <!doctype ...> <html> <head>...</head> <body> ... </body> </html>
Status Line ประกอบด้วย HTTP Version (HTTP/1.1 ในตัวอย่าง), Status Code (200 ในตัวอย่าง), และข้อความสั้นๆ ที่สอดคล้องกับ Status Code (OK ในตัวอย่าง)
ต่อไปนี้เป็นสรุป HTTP 1.1 Response Headers ที่มีประโยชน์ที่สุดซึ่งกลับไปยังเบราว์เซอร์จากเว็บเซิร์ฟเวอร์ หัวข้อเหล่านี้ใช้บ่อยในการเขียนโปรแกรมเว็บ -
| ลำดับ | Header และคำอธิบาย |
|---|---|
| 1 | Allow Header นี้ระบุ Request Methods (GET, POST ฯลฯ) ที่เซิร์ฟเวอร์รองรับ |
| 2 | Cache-Control Header นี้ระบุสถานการณ์ที่เอกสารตอบสนองสามารถ Cache ได้อย่างปลอดภัย สามารถมีค่า public, private หรือ no-cache ฯลฯ Public หมายถึงเอกสาร Cache ได้ Private หมายถึงเอกสารสำหรับผู้ใช้คนเดียว และเก็บใน Private (Non-shared) Caches เท่านั้น no-cache หมายถึงเอกสารไม่ควร Cache เลย |
| 3 | Connection Header นี้สั่งเบราว์เซอร์ว่าจะใช้ Persistent HTTP Connections หรือไม่ ค่า close สั่งเบราว์เซอร์ไม่ใช้ Persistent Connections และ keep-alive หมายถึงใช้ Persistent Connections |
| 4 | Content-Disposition Header นี้ให้คุณขอให้เบราว์เซอร์ถามผู้ใช้บันทึกการตอบสนองลงดิสก์ในไฟล์ชื่อที่กำหนด |
| 5 | Content-Encoding Header นี้ระบุวิธีที่หน้าถูก Encode ระหว่างการส่ง |
| 6 | Content-Language Header นี้บ่งชี้ภาษาที่เอกสารเขียน เช่น en, en-us, ru ฯลฯ |
| 7 | Content-Length Header นี้ระบุจำนวน Bytes ในการตอบสนอง ข้อมูลนี้จำเป็นก็ต่อเมื่อเบราว์เซอร์ใช้ Persistent (Keep-alive) HTTP Connection |
| 8 | Content-Type Header นี้ให้ MIME (Multipurpose Internet Mail Extension) Type ของเอกสารตอบสนอง |
| 9 | Expires Header นี้ระบุเวลาที่เนื้อหาควรถือว่าเก่าและไม่ควร Cache อีกต่อไป |
| 10 | Last-Modified Header นี้ระบุเมื่อเอกสารถูกเปลี่ยนแปลงล่าสุด Client สามารถ Cache เอกสารและจัดหาวันांकโดย Request Header If-Modified-Since ในคำขอภายหลัง |
| 11 | Location Header นี้ควรอยู่กับการตอบสนองทั้งหมดที่มี Status Code ใน 300s แจ้งเบราว์เซอร์ที่อยู่เอกสาร เบราว์เซอร์จะ Reconnect ไปที่นั่นอัตโนมัติและดึงเอกสารใหม่ |
| 12 | Refresh Header นี้ระบุว่าภายในนานแค่ไหนเบราว์เซอร์ควรขอหน้าอัปเดต คุณสามารถระบุเวลาในจำนวนวินาทีที่หน้าจะ Refresh |
| 13 | Retry-After Header นี้ใช้ร่วมกับ Response 503 (Service Unavailable) เพื่อบอกไคลเอ็นต์ว่ากี่เวลาจะ Repeat Request ได้ |
| 14 | Set-Cookie Header นี้ระบุ Cookie ที่เกี่ยวข้องกับหน้า |