Apakah Anda harus memasukkan <link rel = "icon" href = "favicon.ico" type = "image / x-icon" />?

205

Saya tidak memasukkan baris kode berikut di tag kepala saya, namun favicon saya masih muncul di browser saya:

<link rel="icon" href="favicon.ico" type="image/x-icon" />

Apa tujuan memasukkannya?

pengguna784637
sumber

Jawaban:

174

Jika Anda tidak memanggil favicon,, favicon.icoAnda dapat menggunakan tag itu untuk menentukan jalur yang sebenarnya (jika Anda memilikinya di images/direktori). Browser / halaman web mencari favicon.icodi direktori root secara default.

Brian Graham
sumber
3
atau jika Anda tidak memiliki favicon.ico di folder root tetapi dalam misalnya folder aset
Upvote
122

Anda sebenarnya harus melakukan keduanya, sehingga semua browser akan menemukan ikon.

Memberi nama file "favicon.ico" dan meletakkannya di root situs web Anda adalah metode "tidak disarankan" oleh W3C:

Metode 2 (Berkecil): Menempatkan favicon di URI yang telah ditentukan
Metode kedua untuk menentukan favicon bergantung pada penggunaan URI yang telah ditentukan untuk mengidentifikasi gambar: "/ favicon", yang relatif terhadap root server. Metode ini berfungsi karena beberapa browser telah diprogram untuk mencari favicon menggunakan URI itu.
W3C - Cara menambahkan favicon ke situs Anda

Jadi, untuk mencakup semua situasi, saya selalu melakukan itu selain metode yang disarankan untuk menambahkan atribut "rel" dan mengarahkannya ke file .ico yang sama.

saudara kandung
sumber
8
Ya, ini jawaban yang lebih benar. Tidak ada standar yang terkait dengan hanya meletakkan favicon.icodi root, tetapi sebagian besar browser akan meminta file tersebut secara otomatis karena alasan historis.
Fabrício Matté
10
Alasan yang tepat untuk melakukan ini bukan karena itu berfungsi dalam beberapa situasi , tetapi karena metode yang lebih baik tidak bekerja dalam beberapa situasi
Jasper
2
Anehnya, realFaviconGenerator merekomendasikan untuk tidak mendeklarasikan favicon di kepala HTML.
Dan Dascalescu
7
Internet Explorer menemukan favicon dan mencarinya di root. AFAIK, semua browser melakukan ini. Inilah sebabnya saya merekomendasikan meletakkan favicon.ico di root, karena jika tidak maka akan mengembalikan 404 dan kebanyakan sistem tidak men-cache itu ... jadi ia terus memintanya. Letakkan ikon di sana dan itu akan di-cache dengan benar.
Stijn de Witt
50

Saya menggunakannya karena dua alasan:

  1. Saya dapat memaksa penyegaran ikon dengan menambahkan parameter kueri misalnya ?v=2. seperti ini: <link rel="icon" href="https://stackoverflow.com/favicon.ico?v=2" type="image/x-icon" />

  2. Jika saya perlu menentukan path.

nilsi
sumber
Luar biasa, akhirnya tahu mengapa itu tidak muncul!
whamsicore
Saya yakin ini hanya salah ketik, tetapi Anda memiliki relatif href di sana, artinya tidak akan berfungsi kecuali semua halaman Anda berada di tingkat atas atau Anda memiliki file favicon.ico di setiap subdirektori.
Chris Cogdon
FYI untuk pembaca nanti, komentar Chris Cogdon diperbaiki di edit "9 September 16 jam 5:05", jadi tidak ada masalah lagi
Daryn
13

Cukup menambahkannya ke folder root berfungsi setelah mode, tetapi saya telah menemukan bahwa jika saya perlu mengubah favicon, perlu waktu berhari-hari untuk memperbarui ... bahkan penyegaran cache tidak berhasil.

Nicole
sumber
Jangan lupa untuk Ctrl-C & Rebuild.
Jason Glass
9

Banyak orang mengatur jalur cookie mereka ke /. Itu akan menyebabkan setiap permintaan favicon untuk mengirim salinan cookie situs, setidaknya di chrome. Mengatasi favicon Anda ke domain tanpa cookie Anda harus memperbaikinya.

<link rel="icon" href="https://cookieless.MySite.com/favicon.ico" type="image/x-icon" />

Bergantung pada berapa banyak lalu lintas yang Anda dapatkan, ini mungkin alasan paling praktis untuk menambahkan tautan.

Info tentang menyiapkan domain tanpa masak:

http://www.ravelrumba.com/blog/static-cookieless-domain/

pengguna3907900
sumber