一、虚拟路径
通常情况下是将web项目配置到webapps
以外的目录
1.1. 配置虚拟路径:方式一
tomcat目录下的conf文件夹中的server.xml
文件内的Host标签中进行配置
在Host标签中书写Context
标签,并且在此标签中还携带2个属性,docBase
和path
- 注意:
docBase:文件实际路径
path:网址虚拟路径 (绝对路径、相对路径(对与webapps))
假设我将JspProject文件夹剪切后移到D盘下,则我现在的JspProject
绝对路径为(D:\JspProject)
现在在server.xml文件中的Host标签下输入
<Context docBase="D:\JspProject" path="/JspProject" />
重启tomcat,在浏览器上输入localhost:端口/JspProject
此方法的缺点:需要将Tomcat重新启动
1.2. 配置虚拟路径:方法二
在Tomcat\conf\Catalina\localhost
目录下新建一个文件
文件名为"项目名.xml"
然后在里面书写Context标签
<Context docBase="D:\JspProject" path="/JspProject" />
注意:此方法中文件名是什么就代表着localhost:端口/文件名
就会跳转到Context标签中书写的路径
例子:
将此文件名改成`ROOT.xml`
然后在浏览器中访问`localhost:端口`就会访问到原本是在`localhost:端口号/JspProject`的内容
并且如果输入`localhost:端口号/JspProject`将会报404错误
结论:文件名就相当于localhost目录下的子文件夹,但是其真正的需要去访问的路径却是被Context
标签所定义,且Context标签中的path
属性可以被删除,不影响结果
二、虚拟主机
将我们的localhost:端口号
->某一网站
eg:localhost:端口号
->www.js.com
更改本地的 Host 文件的配置,将本地地址映射成某一网址。详见
2.1. 域名解析
现在进行tomcat中的修改默认项目文件夹(webapps)和修改其主机虚拟路径和默认端口
- 在conf\server.xml进行编辑,在
Engine
标签下进行编写- 添加
Host
标签(Host标签中有name(用于区分其他的Host标签)、appBase(此项目所在地,这里就是我们新的项目位置相当于webapps
)属性) - 在Host内添加
Context
标签,标签属性:docBase(本地位置)、path(网址虚拟路径) - 在
Engine
标签中的defaulHost
(默认主机中将原本的localhost修改成我们创建的Host
标签下的name)
- 添加
<!-- 这里的defaulHost需要修改成你需要的主机的配置 -->
<Engine name="Catalina" defaultHost="test">
<!-- 用于测试的主机 -->
<Host name="test" appBase="E:\ruanjian\JspProject">
<Context docBase="E:\ruanjian\JspProject" path="/"/>
</Host>
<!-- tomcat默认主机 -->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
</Engine>
现在进行本地解析
- 在本机路径:在
C:\Windows\System32\drivers\etc\hosts
进行编辑,在底部添加代码127.0.0.1 www.test.com
,这里是将本地的80端口映射成www.test.com
,即访问www.test.com就是访问80端口。