我写了一个网站项目名为mysport,WebRoot下images目录下存放图片文件。里边的jsp页面中对于图片,js等都是以相对路径/开头的,比如说<img src='/images/logo.png'/>,html中以/开头的相对路径都是以服务器为基准的,也就是相当于http://127.0.0.1:8080/images/logo.png.
照理说,应该是图片不能正常显示,因为在tomcat下边并没有images项目,而我的却能正常访问这个图片,这个图片能显示出来,不知道为什么。

解决方案 »

  1.   

    首先心/开头的是叫绝对路径,相对路径是不用/开头的
    其次你这样访问应该是进了tomcat 下的root目录,检查下里面有没有images文件夹
      

  2.   

    楼主把自己的应用当成ROOT应用发布了吧?
      

  3.   


    以/开头的是相对路径,是以服务器地址为基准的相对路径吧。以http开头的才叫绝对路径,如果我说的不对,还请多多指教。还有,我的tomcat下边是没有images文件夹的,即使有,如果不是web项目,仅仅是一个文件夹的话,也是不能访问的。
      

  4.   


    还请说的明白一些,我不知道什么是ROOT发布。或者,请给个详细一些的指示,我去查一查资料,谢谢。
      

  5.   


    默认情况下,“tomcat700\webapps\ROOT”这里面是Tomcat的ROOT目录,也就是你刚刚安装好Tomcat,啥都没干的时候,输入http://localhost:8080/ 所看到的Tomcat欢迎界面。但是这个目录位置是可以修改的,在“tomcat700\conf\server.xml”:
    <Context path="啥都别写,留空" docBase="D:/develop/eclipse/workspace/myProject/WebRoot" debug="0" reloadable="true" />那么你浏览器输入http://localhost:8080/,看到的就不再是Tomcat欢迎界面了,是你自己的应用程序界面。
      

  6.   


    嗯,果然是这样。我找到tomcat下边的ROOT目录下,确实有mySport这个项目。
    我是这样理解的,如果想要在浏览器中输入http://localhost:8080后不是默认的tomcat欢迎界面,可以有两种方式,第一种是不移动Web项目的位置,修改配置文件server.xml;第二种是直接把Web项目移动到ROOT目录下。这样说,对么?
      

  7.   


    也就是说,如果发布为ROOT项目的话,这个项目的项目名已经没有意义了,因为在浏览器的地址正已经不需要这个项目的项目名称了,对么?谢谢。
      

  8.   

    也就是说,如果发布为ROOT项目的话,这个项目的项目名已经没有意义了,因为在浏览器的地址正已经不需要这个项目的项目名称了,对么?谢谢。
      

  9.   

    发现我的回复都被楼主无视了。你的问题,答案是:YES!