看看就行了,没有多大作用,自己配置一次失败,再无练习过
(这是我当时说的一句话,其实到了后面学习Nginx的时候还是用到了这个配置方法,现在想想其实挺简单的,后面会讲到Nginx的基本使用和安装方法)
一.我们经常在浏览器输入一个网址,就可以访问到一个指定网站:
www.baidu.com --à百度网站,这里面有哪些我们看不到的:
www.baidu.com-->IP地址 DNS域名解析系统 windows系统 hosts的隐射
www.baidu.com:80 端口 ,80端口是浏览器访问默认端口,tomcat设置成80端口,就不需要输入端口
www.baidu.com:80/工程名 配置我们的默认启动工程
www.baidu.com:80/工程名/某个页面 web.xml配置欢迎页
虚拟主机技术要解决什么问题: 没钱
一个主机只有一个80端口,一个tomcat可以配置一个默认启动工程
如果我们想要发布我们的网站,就需要有一台电脑,然后电脑上装个tomcat
如果我们想要再发布我们的网站,就再需要有一台电脑,然后电脑上再装个tomcat
如果我们想要再再发布我们的网站,就再再需要有一台电脑,然后电脑上再再装个tomcat
租用。。。 阿里云 腾讯云万网。。。
想办法,让一台服务器电脑,产生多台服务器电脑的作用
先修改默认端口(8080),http的默认端口是80,我们将8080改成80,这样域名就不用带上端口了
修改conf文件夹下的server.xml文件
添加多个主机(以下三个主机对应三个域名,三个域名对应同一个ip地址)
<Host appBase="D:"autoDeploy="true" name="wap.test.com"
unpackWARs="true"xmlNamespaceAware="false" xmlValidation="false">
<ContextdocBase="D:\wap" path="" reloadable="true"crossContext="true"/>
</Host>
<Host appBase="D:"autoDeploy="true" name="web.test.com"
unpackWARs="true"xmlNamespaceAware="false" xmlValidation="false">
<ContextdocBase="D:\web" path="" reloadable="true"crossContext="true"/>
</Host>
<Host appBase="D:"autoDeploy="true" name="manage.test.com"
unpackWARs="true"xmlNamespaceAware="false" xmlValidation="false">
<ContextdocBase="D:\manage" path="" reloadable="true"crossContext="true"/>
</Host>
<host>中的元素:appBase-->项目文件夹的父目录 name-->该主机对应的域名,其他元素自己百度
<context>中的元素:docBase-->对应项目文件夹或者项目的.war包(如果是war包,就需要把unpackWARs设置为true)
path-->访问时如果要带上项目名就添加项目名,不需要(直接域名访问)就为空。
二. 我们在windows中测试:修改C:\Windows\System32\drivers\etc下的hosts文件。添加三个模拟的域名
127.0.0.1 wap.test.com
127.0.0.1 web.test.com
127.0.0.1 manage.test.com
三个域名对应的是同一个ip地址,即本地的ip地址。所以其实我们访问这个三个域名的时候,它还是指向我们本地