Tomcat域名访问文件出现访问不到的问题

例子:

创建虚拟主机:

配置两个虚拟主机,这两个虚拟主机

一个域名(name)为a1.com,存放web应用程序的文件名为webapps1

另一个域名(name)为a2.com,存放web应用程序的文件名为webapps2

创建html文件

webapps的a文件夹下的html文件代码

webapps1的a文件夹下的html文件代码

webapps2的a文件夹下的html文件代码

通过域名访问html文件遇到问题?

此时如果通过域名访问各个存放web应用程序的文件下的a文件夹下的html文件,那么应该会有不同的html文件打开

1、访问本机下的a文件夹的html文件

 2、访问域名a1.com的a文件夹的html文件

 

 3、访问域名a2.com的a文件夹的html文件

问题如何解决?

首先解决问题我们需要知道问题的出处在哪,这里默认存放web程序的文件夹webapps的访问是没有问题的,那么为什么使用域名访问就会出问题呢?

就是当浏览器通过域名去访问文件时
1、先访问hosts文件,如果这个域名通过hosts文件发现我们的域名有映射IP那么就直接向这个IP的8888端口发送数据包(假设我给的是8888端口),
2、然后Connector在监听的8888端口发送来了请求再将这个请求发送给Engine
3、Engine再在Host虚拟主机中寻找是否有这个虚拟主机的name(域名)
4、如果找到了通过这个虚拟主机的默认appBase寻找我要访问的文件
5、如果没有找到,那么就把这个请求给localHost,让localHost处理这个请求
但是如果在第一步的时候,就没有发现这个域名有映射的IP,那浏览器就不知道向哪个IP的主机发送请求,也不会在本机发送请求,所以就不可能访问成功

所以我们需要配置hosts文件,可能有人还不知道hosts文件是什么?

hosts文件是C:\Windows\System32\drivers\etc文件夹下的文件,通过编译器打开hosts文件过后我们就可以对域名和IP进行映射了

当我们把这个映射写好之后就可以通过域名访问文件了

访问域名a1.com的a文件夹的html文件

 访问域名a2.com的a文件夹的html文件

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值