Trình Xem Header HTTP
Cách sử dụng Trình Xem Header HTTP
- 1
Nhập URL trang web
Gõ URL đầy đủ, bao gồm https://, của trang web mà bạn muốn kiểm tra các header.
- 2
Lấy các header
Nhấn "Fetch Headers" để truy xuất các header phản hồi HTTP mà URL đó trả về.
- 3
Xem lại phản hồi
Đọc phần tổng quan hiển thị mã trạng thái, thời gian phản hồi và tổng số header, rồi lướt qua toàn bộ danh sách tên và giá trị header.
- 4
Sao chép tất cả header
Dùng "Copy All Headers" để đưa toàn bộ danh sách header vào bộ nhớ tạm phục vụ gỡ lỗi hoặc lập tài liệu.
Đọc header phản hồi HTTP như một chuyên gia
Header HTTP là gì
Mỗi lần một trình duyệt yêu cầu một trang web, hai tập siêu dữ liệu đi cùng với nội dung thực tế: header yêu cầu, do trình duyệt gửi đi, và header phản hồi, do máy chủ gửi trả lại. Header là các cặp tên-và-giá-trị đơn giản, chẳng hạn Content-Type: text/html, vốn mô tả thông điệp chứ không phải là một phần của trang nhìn thấy được. Chúng kiểm soát bộ nhớ đệm, bảo mật, thương lượng nội dung, cookie, chuyển hướng và còn nhiều hơn nữa. Phần thân trang là thứ bạn thấy; các header là những chỉ dẫn báo cho trình duyệt biết cách xử lý nó.
Công cụ này cho bạn thấy các header phản hồi mà máy chủ trả về cho một URL, cùng với mã trạng thái và thời gian phản hồi mất bao lâu. Đọc chúng là một trong những cách nhanh nhất để hiểu một trang web được cấu hình ra sao, vì rất nhiều hành vi vô hình trên trang lại được trình bày tường minh trong các header.
Mã trạng thái: thứ đầu tiên cần đọc
Trước mọi header, mã trạng thái cho bạn biết điều gì đã xảy ra. Dải 200 nghĩa là thành công, với 200 OK là trường hợp bình thường. Dải 300 nghĩa là chuyển hướng: 301 là một lần dời vĩnh viễn còn 302 hoặc 307 là tạm thời, mỗi mã đi kèm một header Location trỏ đến URL mới. Dải 400 nghĩa là một vấn đề ở phía máy khách, chẳng hạn 404 Not Found hoặc 403 Forbidden, trong khi dải 500 nghĩa là bản thân máy chủ đã hỏng, như với 500 Internal Server Error hoặc 503 Service Unavailable.
Mã trạng thái đặt khung cho mọi thứ khác. Một trang trông ổn trong trình duyệt nhưng lại trả về một mã 404 hoặc một lỗi mềm cho các trình thu thập dữ liệu sẽ không được lập chỉ mục, và một tài nguyên thỉnh thoảng trả về 500 báo hiệu một vấn đề máy chủ đáng được điều tra. Kiểm tra trạng thái thô, thay vì tin vào trang đã hiển thị, sẽ bắt được những vấn đề mà trình duyệt lặng lẽ che đậy.
Header về nội dung và bộ nhớ đệm
Content-Type khai báo loại phương tiện và bộ ký tự của phản hồi, ví dụ text/html; charset=utf-8 hoặc application/json. Một Content-Type sai khiến trình duyệt xử lý nhầm một phản hồi, chẳng hạn đề nghị tải xuống một trang HTML thay vì hiển thị nó. Content-Encoding tiết lộ cách nén như gzip hoặc br (Brotli), xác nhận rằng các tài nguyên văn bản đang được gửi đi một cách hiệu quả. Content-Length cho biết kích thước theo byte.
Bộ nhớ đệm chủ yếu được điều khiển bởi Cache-Control, vốn quy định rõ một phản hồi có thể được lưu đệm trong bao lâu và ở đâu, với các chỉ thị như max-age, public, private và no-store. ETag và Last-Modified hỗ trợ các yêu cầu có điều kiện, cho phép một trình duyệt hỏi liệu bản sao đã lưu đệm của nó còn mới hay không và nhận về một mã 304 Not Modified nhẹ nhàng khi không có gì thay đổi. Các header bộ nhớ đệm bị cấu hình sai là một nguyên nhân hàng đầu gây ra cả nội dung cũ lẫn các lần ghé thăm lặp lại chậm một cách không cần thiết, nên chúng đáng được xem xét kỹ lưỡng.
Các header bảo mật đáng kiểm tra
Một nhóm các header phản hồi gia cố một trang web chống lại các cuộc tấn công phổ biến, và sự hiện diện của chúng là một bài kiểm tra sức khỏe nhanh. Strict-Transport-Security (HSTS) buộc các trình duyệt dùng HTTPS cho các lần ghé thăm về sau, đóng lại cánh cửa tấn công hạ cấp. Content-Security-Policy (CSP) hạn chế những script, kiểu và tài nguyên nào khác được phép tải, vốn là tuyến phòng thủ mạnh nhất chống lại tấn công kịch bản chéo trang. X-Frame-Options (hoặc chỉ thị frame-ancestors trong CSP) ngăn các trang của bạn bị nhúng trong các iframe độc hại, đánh bại kiểu tấn công clickjacking. X-Content-Type-Options: nosniff chặn các trình duyệt đoán mò loại nội dung.
Khi đánh giá một trang web, sự vắng mặt của những header này tự nó cũng đã nói lên nhiều điều. Một trang web phục vụ nội dung nhạy cảm mà không có HSTS, không có CSP và không có X-Frame-Options thì có những lỗ hổng gia cố lộ rõ. Việc xem các header làm cho tư thế bảo mật trở nên nhìn thấy được chỉ trong nháy mắt, vốn hữu ích cho cả các trang web của chính bạn lẫn việc đánh giá các bên thứ ba.
Cookie, CORS và dấu vân tay máy chủ
Các header Set-Cookie cho thấy một máy chủ đang gieo những cookie nào và với những cờ ra sao. Các thuộc tính Secure, HttpOnly và SameSite trên một cookie quyết định liệu nó chỉ được gửi qua HTTPS, được ẩn khỏi JavaScript, và được bảo vệ chống lại các yêu cầu chéo trang hay không, nên đọc chúng sẽ tiết lộ liệu các cookie phiên có được cấu hình an toàn hay không. Header Access-Control-Allow-Origin, một phần của CORS, cho bạn biết liệu và từ đâu một tài nguyên có thể được các script trên các tên miền khác yêu cầu, vốn thiết yếu khi gỡ lỗi vì sao một lần fetch ở giao diện người dùng bị chặn.
Các header khác để lại dấu vân tay của ngăn xếp công nghệ. Server nêu tên phần mềm máy chủ web, X-Powered-By có thể tiết lộ framework ứng dụng, còn Via hoặc CF-Cache-Status có thể phơi bày một CDN như Cloudflare đứng trước máy chủ gốc. Nhiều nhà vận hành cắt bỏ những header này để giảm rò rỉ thông tin, nên cả những gì hiện diện lẫn những gì vắng mặt một cách đáng chú ý đều kể một câu chuyện.
Vì sao việc kiểm tra header quan trọng với SEO và gỡ lỗi
Một số header ảnh hưởng trực tiếp đến tìm kiếm. Header X-Robots-Tag mang theo cùng các chỉ thị như thẻ meta robots, chẳng hạn noindex và nofollow, nhưng áp dụng ở tầng HTTP, điều này khiến nó trở thành cách duy nhất để kiểm soát việc lập chỉ mục cho các tệp không phải HTML như PDF. Một dòng X-Robots-Tag: noindex đặt nhầm chỗ và bị bỏ quên trong môi trường sản xuất có thể âm thầm gỡ các trang khỏi chỉ mục, và vì nó vô hình trên chính trang đó, việc xem các header thô thường là cách duy nhất để tìm ra nó. Header Link cũng có thể khai báo một quan hệ canonical ở phía máy chủ.
Đối với việc gỡ lỗi hằng ngày, các header là sự thật nền tảng. Chúng xác nhận liệu HTTPS có được ép buộc hay không, liệu nén và bộ nhớ đệm có thực sự được bật hay không, liệu một lần chuyển hướng có phải là mã 301 mà bạn dự định chứ không phải một mã 302, và liệu máy chủ có đang trả về đúng mã trạng thái mà bạn mong đợi hay không. Vì các trình duyệt chặn các script đọc header xuyên nguồn gốc, công cụ này lấy URL thông qua một proxy máy chủ để bạn có thể kiểm tra các header phản hồi của bất kỳ trang công khai nào mà không vướng những hạn chế đó.
Câu hỏi thường gặp
Công cụ này sẽ cho tôi xem những header HTTP nào?
Vì sao header HTTP hữu ích cho SEO và gỡ lỗi?
Vì sao URL cần bao gồm https://?
Vì sao một lần lấy header có thể trả về lỗi?
Công cụ có miễn phí không, và URL có được xử lý riêng tư không?
Công cụ liên quan
Tiếp tục với những công cụ hữu ích này