Tomcat中使用Favicon

IE7中每个页面都有一个自己的图标,如果不自己制定的话,会变成tomcat的小猫咪。下面说一下怎么改掉这个小猫咪。

  1. 在每个页面的<head></head>里加入以下两行代码。

    1
    2
    <link rel="icon" href="{contextPath}/favicon.ico" type="image/x-icon" /> 
    <link rel="shortcut icon" href="{contextPath}/favicon.ico" type="image/x-icon" />

    这里的 {contextPath} 是你的站点的名字,所以这里是绝对路径,如果我没有记错的话,在jsp中相对路径好像是不好用的。比如,网易的话,就应该是

    1
    2
    <link rel="icon" href="http://www.163.com/favicon.ico" type="image/x-icon" /> 
    <link rel="shortcut icon" href="http://www.163.com/favicon.ico" type="image/x-icon" />
  1. 在WebRoot下面,也就是网站的根目录下面放一个favicon.ico文件,这个文件必须是标准的ico文件。可以通过http://www.chami.com/html-kit/services/favicon/ 这个网站生成一个 ,大小是32x32的,如果你希望可以在IE6里表示出来的话,最好是16X16的,在5K以下,因为我们遇到如果用一个15k的文件,IE不能自动下载,必须手动键入favicon.ico的地址后,它才能表示出来。颜色的话,16色,256色都可以。保险一点就是16色,我用的是256色的。

    有的网站说,这个文件必须叫”favicon.ico”,必须放在根目录下,要不然IE认不出来(别的浏览器可以),这个我没有试验过。

    这个时候你在你的浏览器里敲入 http://localhost:8080/siteName/favicon.ico 的时候看到的将是一个小红叉。

  1. 要想摆脱小红叉就得靠这一步啦,在自己应用的web.xml或者tomcat的Conf下的web.xml中加入一下代码,然后重起tomcat。

    1
    2
    3
    4
    5
    6
    7
    8
    <session-config> 
    <session-timeout>60</session-timeout>
    </session-config>

    <mime-mapping>
    <extension>ico</extension>
    <mime-type>image/x-icon</mime-type>
    </mime-mapping>
  1. 如果你还用了什么登陆的过滤,就是filter之类,别忘了把这个文件给解放出来。
  1. 这个时候你在输入,http://localhost:8080/siteName/favicon.ico,应该可以看到对应的图片,如果看不到,找找是不是什么地方错了。
  1. 清空IE的缓存,就清空文件就可以了。然后输入你的网址,当然这个时候你还看不见图标。关掉浏览器,在重新打开,在地址栏里,你就可以看到你的图标了。我们这里所指的浏览器是IE7,因为IE6必须得添加入收藏夹议后才能看到图标,而且只有添加的那个网址能看到,网站的其他页面都没有图标。查了一些资料,也没有解决这个问题。以后有时间在解决吧。