2010-08-27 3 views
5

Je travaille sur un site d'application de calendrier pour un usage interne ici. C'est essentiellement un emballage pour une page de calendrier google, mais il y aura des choses supplémentaires en haut avec le calendrier ci-dessous. Une chose «amusante» que je voudrais faire avec ceci est de changer le favicon pour la page chaque jour - j'utilise une sorte d'image de calendrier et je voudrais qu'il montre l'image pour la journée en cours. Est-ce possible? J'utilise des webforms asp.net, mais je pose vraiment la question à un niveau inférieur - est-il possible de faire fonctionner ce navigateur ou est-ce que les navigateurs vont le mettre en cache de façon trop agressive?Puis-je changer un favicon tous les jours

+0

Bonne idée d'ailleurs. –

Répondre

7

En théorie, vous pouvez. En pratique, les navigateurs le mettent en effet en cache très agressivement. Votre meilleur pari est de placer le fichier favicon en dehors du dossier racine (pour empêcher la recherche automatique) et de le définir manuellement dans <head> avec un horodatage changeant tous les jours dans la chaîne de requête de l'URL favicon. Par exemple.

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

Oh, la page HTML lui-même devrait aussi avoir moins ou plus les mêmes paramètres de contrôle de cache, sinon le navigateur demandera la page elle-même à partir du cache et donc jamais rafraîchir la favicon.

+1

Bonne idée, forçant un chemin unique est un bon moyen de sortir du problème de cache +1 – Konrad

+0

Hmm ... que 3213256 semble plus long que nécessaire. Je parie que je pourrais m'en tirer avec la réutilisation 1-31. –

+0

C'était juste un exemple :) Peu importe ce que vous mettez, tant qu'il change tous les jours. – BalusC

0

Vous devriez pouvoir contrôler la mise en cache du favicon en définissant l'en-tête expires. Alternativement, il suffit de changer l'URL de la favicon tous les jours et le définir en utilisant l'en-tête de lien.

<link href='http://example.com/favicon-20100827.ico' rel='shortcut icon'/ 
Questions connexes