tomact的server.xml里有如下定义:<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">  //这里定义所有Web应用的存放目录,  <Context path="" docBase="ROOT" debug="0"/>   //通过使用这一行来定义出网站文档的根目录,也就是说当你访问http://localhost:8080/的时候,其真实目录是C:\Program Files\Apache Group\Tomcat 4.1\webapps\ROOT  而不是C:\Program Files\Apache Group\Tomcat 4.1\webapps 。
因此给你造成错觉以为yangyi应该放到ROOT目录下。而你需要访问http://localhost:8080/yangyi/的时候,其对应的真实目录应该是C:\Program Files\Apache Group\Tomcat 4.1\webapps\yangyi。你自己定义其它目录的时候:比如:<Context path="/examples" docBase="examples" debug="0" reloadable="true" crossContext="true"/>
和:<Context path="/examples" docBase="/examples" debug="0" reloadable="true" crossContext="true"/>
以及<Context path="/examples" docBase="C:\Program Files\Apache Group\Tomcat 4.1\webapps\examples" debug="0" reloadable="true" crossContext="true">三种写法所得到的效果是一样的。

解决方案 »

  1.   

    再次感谢wellsoon的热情帮助,但我还有一点疑惑,我在webapps下新建了一个文件夹abc,里面有一个文件aaa.html,我又在ROOT下面也新建了一个文件夹abc,里面也有一个文件aaa.html,但这个aaa.html和上一个aaa.html内容不同,启动tomcat后.在ie中输入http://localhost:8080/abc/aaa.html,返回的结果是ROOT下面的哪个aaa.html而不是webapps下面的,将html文件改为jsp结果也一样,不知这又是怎么回事,谢谢!!
      

  2.   

    哎,不用麻烦大家了,我明白了.在server.xml中加入一个虚拟目录abc即可解决上面的问题.谢谢wellsoon的讲解,让我对虚拟目录有了进一步的理解谢谢!