Tomcat上部署web项目的目录问题

记录下最近学习Tomcat关于目录的问题。

首先明确一个概念,从浏览器访问服务器的URL是映射到了服务器上的一个目录的某一个资源文件,打一个比方,有如下一条URL:http://192.168.2.99:8000/book/test.html,在不考虑内容协商的情况下,解释如下

  • 192.168.2.99:这是服务器的IP地址。
  • 8000:是Tomcat服务监听的端口号。
  • /book:这个book并不一定代表服务器上的某一个实际存在的book目录,可以把它理解为一个目录的替换。
  • test.html:浏览器请求的资源文件。

关于根目录:有2种方式设置web站点的根目录

  • /webapps/ROOT目录自动映射成为Web站点的根目录,所以将web项目放进ROOT目录下就可以在浏览器进行访问了。
  • 如果不想用默认的ROOT根目录,可以找到/conf/server.xml文件,找到如下标签格式应该如:,添加如下格式的XML语句。其中path=""时代表根目录,上边那条XML语句便将根目录设置为了"d:\test"。

关于虚拟子目录:

  • 依旧使用格式设置虚拟子目录,当path不等于“”时,如:便将d:\test目录映射成了/book子目录。对于URL:http://192.168.2.99:8000/book/test.html,如果未设置虚拟子目录为/book,访问的是:根目录/book/test.html,如果有设置虚拟子目录,假设为d:\test,则访问的是d:\test\test.html。对于标签里的docBase属性,可以为绝对路径,也可以为相对路径,如果为相对路径,则基准路径为标签里面的appBase。
  • 也可以不修改server.xml文件,在tomcat\conf\Catalina\localhost目录下添加project.xml文件,添加如下格式语句:对于URL:http://192.168.2.99:8000/project/test.html,访问的则是D:\test\test.html。

你可能感兴趣的:(Servlet&Jsp)