问题描述
比如现在有个目录-ROOT-aaa-news.jsp-public-bbb.ico-header.jsp-index.jspheader.jsp头部加入<linkrel="shortcuticon"href=${basePath}"public/bbb.ico">在index.jsp中包含了header.jsp文件,访问时正常显示出来,同样包含到news.jsp中就无法显示。想不通的是这不是绝对路径吗?为什么被包含到aaa/news.jsp下就不能显示呢,如果换了相对路径../public/bbb.ico就正常望大家帮忙解释下
解决方案
解决方案二:
想了下在news.jsp页面下实际路径应该是(比如:localhost:8080/test/post/public/bbb.ico而不是localhost:8080/test/public/bbb.ico)不知道有什么好的解决办法吧?还是在每个页面里写入<linkrel="shortcuticon"href=${basePath}"public/bbb.ico">这样并不好吧?
解决方案三:
在JSP中,如果是:aaa/news.jsp这种情况的url,系统会自动在前面加上地址栏最后一个/斜线之前的东西,比如你的地址栏是:http://sdfdf.we.com/sdfj/adkfj/l.jsp,那么这个aaa/news.jsp其实就是:http://sdfdf.we.com/sdfj/adkfj/aaa/new.jsp,用这个种格式的时候一定要写上你的base属性,就是html的base标签,如:<basehref="http://sdf.co/"/>,此时你在页面中使用路径是其实就是相对于BASE的路径了
解决方案四:
<linkrel="shortcuticon"href="/test/public/bbb.ico">
解决方案五:
的struts中不要用相对路径,只有绝对路径就好了。