Будут ли браузеры сначала запрашивать /favicon.ico или <link>? - PullRequest
8 голосов
/ 12 октября 2009

Я хочу установить иконку для запроса со статического файлового сервера вместо основного веб-сервера для оптимизации производительности.

Если я укажу <link rel="shortcut icon" href="http://cdn.site.com/favicon.ico">, но у меня также будет /favicon.ico в корне моего сайта в качестве запасного варианта, какие браузеры предпочтут? Будут ли браузеры (и какие?) По-прежнему искать /favicon.ico, что сделает переход на статический файловый сервер бесполезным?

Ответы [ 3 ]

30 голосов
/ 12 октября 2009

Я сделал тест, предложенный выше. Я поместил /favicon.ico в корень домена и ссылку, и запустил страницу в:

  1. Опера 10
  2. Опера 9,64
  3. Firefox 3.5
  4. IE 6
  5. IE 7
  6. IE 8
  7. Safari 4

Все они показали значок, загруженный с <link rel="shortcut icon" href="http://cdn.site.com/favicon.ico"> (расположен на внешнем сервере). Я проверил access.log, и запросов на /favicon.ico!

не было

Затем я закомментировал <link>, проверил снова во всех браузерах, и они показали значок /favicon.ico и соответствующие записи в access.log.

7 голосов
/ 12 октября 2009

Ответ таков: ссылка должна превосходить локальный файл в большинстве современных браузеров, но на самом деле это зависит от реализации с неосновными браузерами (хотя вы, вероятно, не особо заботитесь о других браузерах, кроме IE, Firefox, Safari и Chrome)

Это также должно быть довольно просто проверить самостоятельно. Просто поместите файл favicon.ico в папку сайта, а также добавьте ссылку на файл разного вида на статическом сервере и посмотрите, какой из них загружен в разных браузерах.

3 голосов
/ 09 марта 2013

Не забывайте, что браузеры - это не единственное, что запрашивает favicon - многие сканеры и другие приложения тоже делают это.

...