Trình kiểm tra Brotli

5 trên 2 xếp hạng

Trình kiểm tra Brotli là công cụ miễn phí giúp xác định một trang web có sử dụng Brotli để nén nội dung khi phân phối hay không.

Nén Brotli là gì?

Brotli là định dạng nén không mất dữ liệu, được dùng để giảm lượng dữ liệu truyền từ máy chủ web đến trình duyệt. Định dạng này thường được áp dụng cho nội dung dạng văn bản như các tệp HTML, CSS, JavaScript, JSON và SVG.

Quá trình nén diễn ra trước hoặc trong khi máy chủ gửi phản hồi. Trình duyệt tương thích cho biết nó chấp nhận Brotli bằng cách đưa br với giá trị chất lượng khác 0 vào tiêu đề yêu cầu HTTP Accept-Encoding. Nếu máy chủ hoặc mạng phân phối nội dung được cấu hình để dùng Brotli, hệ thống có thể trả về phản hồi đã nén kèm Content-Encoding: br.

Brotli không làm thay đổi ý nghĩa của nội dung. Trình duyệt sẽ giải nén phản hồi trước khi xử lý. Những định dạng vốn đã có cơ chế nén riêng, gồm JPEG, PNG, MP4 và hầu hết tệp lưu trữ, thường không giảm thêm đáng kể khi tiếp tục nén bằng Brotli.

Làm sao kiểm tra một trang web có dùng Brotli không?

Nhập địa chỉ trang web rồi chạy kiểm tra để xác định trang đó có sử dụng nén Brotli hay không.

Quá trình kiểm tra được thực hiện trên máy chủ. Dữ liệu bạn nhập được gửi đến máy chủ qua HTTPS và không được lưu trữ.

Đọc kết quả kiểm tra Brotli như thế nào?

Kết quả cho biết trang web có sử dụng Brotli hay không.

Nếu phát hiện Brotli, trang web đang sử dụng Brotli. Nếu không phát hiện, trang web có thể không nén nội dung hoặc đang dùng một kiểu mã hóa khác như Gzip.

Khắc phục các sự cố Brotli thường gặp

Hãy thực hiện các bước chẩn đoán sau nếu công cụ không phát hiện Brotli như mong đợi.

  1. Đã bật Brotli nhưng trang web vẫn trả về Gzip. Kiểm tra cài đặt thương lượng nội dung, điều kiện áp dụng nén, ngưỡng kích thước tối thiểu và các biến thể đã lưu vào bộ nhớ đệm. Nếu yêu cầu đi qua CDN, proxy ngược hoặc nền tảng lưu trữ có chính sách nén riêng, hệ thống trung gian có thể thay Brotli bằng phản hồi Gzip đã được lưu vào bộ nhớ đệm.
  2. Trang chủ vượt qua kiểm tra nhưng các tệp tĩnh thì không. Xem lại quy tắc nén dành cho tệp CSS và JavaScript. Quy tắc máy chủ thường được áp dụng theo loại MIME, còn tài nguyên có thể được phân phối từ một tên máy chủ khác, chẳng hạn như static.example.co.uk.
  3. Không thấy thay đổi mới thực hiện trên dịch vụ lưu trữ hoặc CDN. Kiểm tra DNS, định tuyến và các tiêu đề phản hồi HTTP. Nếu lưu lượng vẫn được chuyển đến máy chủ biên hoặc máy chủ gốc cũ, kết quả có thể phản ánh cấu hình trước đó.

Tra cứu tiêu đề HTTP có thể giúp bạn kiểm tra các tiêu đề phản hồi ngoài kết luận về nén. Brotli và HTTP/2 là hai tính năng riêng biệt, vì vậy hãy dùng Trình kiểm tra HTTP/2 nếu bạn cũng cần xác nhận giao thức kết nối. Một trang web có thể dùng Brotli trên kết nối không sử dụng HTTP/2, và việc bật HTTP/2 không tự động bật Brotli.

Bạn cũng có thể kiểm tra từ dòng lệnh bằng curl. Một yêu cầu như curl --compressed -D - -o /dev/null https://www.example.co.uk/ sẽ yêu cầu curl chấp nhận các kiểu nén được hỗ trợ và in ra tiêu đề phản hồi. Kết quả có thể khác nếu máy chủ xử lý ứng dụng dòng lệnh theo cách riêng hoặc nếu sử dụng yêu cầu HEAD thay cho yêu cầu GET thông thường.

Vì sao bộ nhớ đệm hoặc độ trễ cập nhật có thể khiến kết quả trông không chính xác?

Bộ nhớ đệm và độ trễ định tuyến có thể tạm thời tạo ra kết quả khác với cấu hình bạn mong đợi. CDN có thể giữ một đối tượng cũ chưa nén hoặc đã nén bằng Gzip cho đến khi đối tượng đó hết hạn hoặc bị xóa khỏi bộ nhớ đệm.

Khi việc chọn phiên bản nội dung phụ thuộc vào Accept-Encoding, phản hồi từ máy chủ gốc phải chứa Vary: Accept-Encoding. Bộ nhớ đệm sử dụng trường này khi tạo khóa bộ nhớ đệm để lưu riêng các phiên bản dành cho những ứng dụng có khả năng hỗ trợ nén khác nhau. Nếu tiêu đề này bị thiếu hoặc được xử lý không đúng, bộ nhớ đệm có thể trả về sai phiên bản. Hãy kiểm tra khóa bộ nhớ đệm của CDN và các tiêu đề phản hồi nếu Brotli lúc được phát hiện, lúc không.

Thay đổi DNS cũng có thể gây thêm độ trễ. Trình phân giải có thể giữ lại địa chỉ cũ cho đến khi thời gian tồn tại của bản ghi hết hạn, và các mạng khác nhau có thể truy cập những máy chủ khác nhau trong quá trình chuyển đổi. Vì công cụ này chạy trên máy chủ, đường đi qua DNS và bộ nhớ đệm của nó không nhất thiết giống với đường đi mà trình duyệt của bạn sử dụng. Công cụ dành cho nhà phát triển trong trình duyệt cũng có thể hiển thị phản hồi được lưu cục bộ, vì vậy hãy tắt bộ nhớ đệm rồi tải lại trang khi so sánh kết quả.

Câu hỏi thường gặp

Có thể bật Brotli và Gzip cùng lúc không?

Có. Máy chủ thường hỗ trợ cả hai và chọn kiểu mã hóa dựa trên tiêu đề Accept-Encoding của ứng dụng. Nhờ đó, các ứng dụng cũ tương thích vẫn có thể dùng Gzip, còn những ứng dụng khai báo br với giá trị chất lượng khác 0 sẽ được dùng Brotli.

Tệp Brotli có dùng phần mở rộng .br không?

Các tệp Brotli được nén sẵn có thể dùng phần mở rộng .br trên máy chủ, nhưng khách truy cập trang web thường vẫn yêu cầu URL gốc. Máy chủ sẽ chọn phiên bản đã nén và xác định kiểu nén qua tiêu đề phản hồi Content-Encoding.

Có nên dùng Brotli cho mọi tệp trên trang web không?

Không. Brotli thường phù hợp với phản hồi dạng văn bản, còn hình ảnh, video, tệp PDF và tệp lưu trữ có thể đã được nén sẵn. Nén lại các định dạng này có thể tốn tài nguyên máy chủ mà không làm giảm đáng kể dung lượng truyền.

Brotli có giúp cải thiện thứ hạng tìm kiếm không?

Brotli không trực tiếp đảm bảo thứ hạng cao hơn. Phản hồi văn bản có dung lượng nhỏ hơn có thể giảm thời gian truyền và góp phần cải thiện hiệu suất trang, nhưng bộ nhớ đệm, thời gian phản hồi của máy chủ, quá trình thực thi tập lệnh và cách xử lý hình ảnh cũng ảnh hưởng đến trải nghiệm thực tế của người dùng.

Sau khi bật Brotli, cần kiểm tra những gì?

Hãy xác nhận rằng các phản hồi văn bản đại diện tải đúng trong trình duyệt. Kiểm tra Content-Type, Content-Encoding, Content-Length nếu có và Vary. Đồng thời, hãy xóa các mục CDN liên quan nếu những phiên bản cũ vẫn còn trong bộ nhớ đệm.

Các công cụ tương tự

Tra cứu SSL

Nhận tất cả các chi tiết có thể về một chứng chỉ SSL.

8,388
142
Tra cứu tiêu đề HTTP

Lấy tất cả các tiêu đề HTTP mà một URL trả về cho một yêu cầu GET điển hình.

4,493
35
Trình kiểm tra HTTP/2

Kiểm tra xem một trang web có đang sử dụng giao thức HTTP/2 mới hay không.

4,730
136

Công cụ phổ biến