Tôi có thể hướng dẫn trình duyệt không tìm kiếm favicon không?


19

Tôi có một trang web không có / cần một favicon.

Có cách nào để hướng dẫn trình duyệt không lãng phí yêu cầu tìm kiếm /favicon.ico không?

Tôi không có nghĩa là lọc nhật ký, nhưng một cái gì đó phía khách hàng, như thế này:

<link rel="shortcut icon" href="about:blank" />

Điều đó có vẻ hiệu quả, nhưng tôi không ở vị trí để thực hiện các bài kiểm tra toàn diện, (và các công cụ tìm kiếm không có ích).

Bất cứ ai cũng có thể xác nhận nếu đây là một phương pháp hợp lệ, hoặc cung cấp một sự thay thế phù hợp?

Cập nhật: Khi điều tra thêm, điều đó không hoạt động (ít nhất là không với Chromium 18 trên một miền không cục bộ). Một giải pháp một phần là sử dụng data:URL để phân phát ảnh trống base64, ( ví dụ từ đây ):

<link href="data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAF0lEQVRIx2NgGAWjYBSMglEwCkbBSAcACBAAAeaR9cIAAAAASUVORK5CYII=" rel="icon" type="image/x-icon" />

Điều này đang hoạt động, nhưng có hai mặt trái:

  • Có lẽ nó sẽ thất bại trong các trình duyệt không hỗ trợ URL dữ liệu.
  • Nó không dẫn đến favicon nào cả - tức là nó ẩn biểu tượng mặc định của trình duyệt.

Bạn có thấy câu hỏi này trên SO không?
j0k

Không, cảm ơn vì liên kết. Tiếp tục từ nhận xét "sử dụng tệp trống" của Max, tôi tự hỏi liệu đây <link href="data:image/x-icon;" rel="shortcut icon" />có phải là một giải pháp hợp lệ không - có vẻ như nó có thể đang hoạt động (hiển thị mặc định của trình duyệt), nhưng cần kiểm tra xem IE7 / những người khác phản hồi như thế nào.
Peter Boughton

Chỉ cần thử trên IE8 và nó sẽ hiển thị favicon mặc định
j0k

Hmm, ẩn trong một liên kết không rõ ràng trong câu trả lời cho câu hỏi đó là một câu hỏi liên quan đến SO với rất nhiều câu trả lời / nhận xét - dường như không có gì mới / hữu ích, nhưng trong trường hợp tôi đã bỏ lỡ nội dung ở đây là liên kết nào .
Peter Boughton

3
[Điều đáng chú ý ở đây là các trang web thường cực kỳ quan tâm đến hiệu suất, kích thước trang, yêu cầu, v.v. và với lý do có thể tốt hơn, ví dụ: Google, Yahoo, phần lớn chỉ cần tiếp tục và tạo một biểu tượng và chuyển sang các vấn đề quan trọng hơn.]
Su '

Câu trả lời:


9

Chà, tôi vừa mới đi thử nghiệm với một loạt các trình duyệt ngẫu nhiên mà tôi tình cờ đã cài đặt, Wiresharkmột trang web đơn giản chứa thẻ

<link rel="shortcut icon" href="about:blank">

Đây là kết quả cho đến nay:

  • Chromium 18.0 trên Ubuntu Linux: Hoạt động. Không có yêu cầu /favicon.ico, không có favicon hiển thị.

  • Google Chrome 21.0 trên Windows XP: Hoạt động.

  • Firefox 15.0.1 trên Ubuntu Linux: Hành vi không nhất quán. Rõ ràng, Firefox cho thấy không có favicon và không yêu cầu HTTP cho /favicon.icotrên đầu tải trang. Tuy nhiên, khi trang được truy cập lần thứ hai , /favicon.icođược tải và hiển thị.

  • Firefox 15.0 trên Windows XP: Hành vi không nhất quán, giống như trên.

  • Opera 10.10 trên Ubuntu Linux: Không hoạt động. Yêu cầu /favicon.iconhưng không hiển thị nó.

  • Konqueror 4.8.4 trên Ubuntu Linux: Hoạt động.

  • rekonq 0.9.1 trên Ubuntu Linux: Bị hỏng. Cố gắng yêu cầu /about:blanktừ máy chủ.

  • Internet Explorer 8.0 trên Windows XP: Không nhất quán (?). Có vẻ như lúc đầu làm việc, nhưng /favicon.icođược yêu cầu tại một số điểm, rất có thể sau khi tôi truy cập một trang khác và sử dụng nút quay lại. Việc kiểm tra có phần phức tạp bởi thực tế là, vì một số lý do, IE đang từ chối thực sự đưa ra các favicon thử nghiệm của tôi. Cần thử nghiệm nhiều hơn.

Ghi chú khác:

Các trình duyệt có xu hướng lưu trữ bộ đệm favicon khá mạnh. Các phương pháp thông thường để xóa bộ nhớ cache của trình duyệt dường như không hoạt động; Tôi đã phải chạy các trình duyệt với các cấu hình hộp cát hoàn toàn mới để có kết quả lặp lại liên tục. Đáng chú ý, điều hòa ít nhất sẽ quay trở lại để hiển thị favicon (không mặc định) từ một trang khác trên cùng một trang nếu nó có một bộ nhớ cache.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.