Como dijo Iain Fraser, la clase de Favicon controlstyle.com no funciona con todos los casos de prueba.
Básicamente, si se proporciona, la etiqueta de icono <link>
acceso directo puede contener diferentes tipos de URL:
- completo URL absoluta:
http://www.domain.com/images/fav.ico
- URL absoluta con el esquema de relación:
//www.domain.com/images/fav.ico
- ruta absoluta:
/images/fav.ico
- URL relativa:
../images/fav.ico
Además, la página web puede contener un atributo <base href="..." />
que cambia cómo tratar con dirección URL relativa y la ruta absoute ...
Así que he escrito una clase PHP que funciona con todos estos casos. En primer lugar, intenta obtener la URL de favicon del atributo <link>
y recurrir al URI de favicon predeterminado (//www.domain.com/favicon.ico) en caso de error.
Puede agarrarlo en mi sitio web aquí: http://www.finalclap.com/faq/477-php-favicon-find-download o instalarlo usando el compositor: composer require vincepare/favicon-downloader
.
Modo de empleo:
<?php
require 'FaviconDownloader.class.php';
$favicon = new FaviconDownloader('http://stackoverflow.com/questions/19503326/bug-with-chrome-tabs-create-in-a-loop');
if($favicon->icoExists){
echo "Favicon found : ".$favicon->icoUrl."\n";
// Saving favicon to file
$filename = 'favicon-'.time().'.'.$favicon->icoType;
file_put_contents($filename, $favicon->icoData);
echo "Saved to ".$filename."\n\n";
} else {
echo "No favicon for ".$favicon->url."\n\n";
}
?>
que es como escribirte: www.domain.com/favicon.ico. Lo he comprobado y es lo mismo ... – vsync
No, en realidad, antes que nada, devuelve un png, no un ico. En segundo lugar, los favicons se pueden ubicar en una miríada de caminos, esto lo estandariza y deja el trabajo en google. Finalmente, si no se encuentra un favicon, devuelve una imagen de marcador de posición, en lugar de aterrizar con una imagen rota. – Mala
Pero al igual que con todas las soluciones centrales: tenga en cuenta que Google puede conectarse con usted y con ese grupo de URL ahora. Si eso no te molesta, esto se ve bien. –