Recently I came across a problem from one of my friends. Whenever he browses to Yahoo! in Internet Explorer it was showing Google’s favourite icon (Favicon) in browser address bar. He was confused. I then found the answer to the problem, which I am giving below.
When you navigate to a site, IE downloads the favicon and caches it in the temporary internet files folder, where the this favicon will be assigned a unique name and mapped to its URL. So for example, if you navigate to www.bing.com, IE will download the favicon from http://www.bing.com/favicon.ico and cache it as favicon.ico somewhere in the temporary internet files folder, and map it to http://www.bing.com/favicon.ico.
Now if you somehow remove this favicon file from the temporary internet files folder, without removing the mapping to its URL, then the cache entry http://www.bing.com/favicon.ico will point to a non-existent file. Now say you navigate to http://my.yahoo.com, and IE downloads the favicon from http://my.yahoo.com/favicon.ico to the SAME favicon.ico file in the temporary internet file folder, then the cache entry http://www.bing.com/favicon.ico will be mapping to the yahoo favicon.So the next time you go on http://www.bing.com, IE will query the cache and incorrectly think that the favicon for this site has already been downloaded and is avail
able on file. It will load the favicon.ico for http://my.yahoo.com, and hence the wrong favicon will be displayed.
Ordinarily you cannot remove a file from the Temporary internet files folder without also removing the file’s mapping. But you can do this by running the del /s command in command line or possibly by using 3rd party cache cleaning tools. Note that cleaning your temporary internet files folder through IE or the Internet Options Dialog will restore everything back to normal.