Web应用配置虚拟主机(www.baidu.com)
最终效果:浏览器地址栏输入www.baidu.com访问时,会显示自己的网页
1、创建文件
任意盘新建一个www.baidu.com文件,在该文件夹下新建WEB-INF文件、自己写的一个html文件,一张图片,然后在WEB-INF下新建一个classes文件、lib文件以及一个web.xml文件,在web.xml文件中输入以下代码进行配置
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<welcome-file-list>
<welcome-file>1.html</welcome-file>
</welcome-file-list>
<Context path="www.baidu.com" appBase="E:\WEB\tomcat7\webapps\www.baidu.com"/>
</web-app>
注意:www.baidu.com文件建完后,需要将该文件移动到Tomcat的webapps下才能生效,所以appBase后的路径是将www.baidu.com整个文件移动到Tomcat的webapps下的路径
2、修改hosts文件
为什么要修改hosts文件?
网络中是通过ip来区分不同的主机的,浏览器如何知道www.baidu.com对应的主机的ip呢?这里就是dns服务器在起作用了。
互联网上有一些专门将域名翻译为对应主机ip的服务器叫做dns服务器(域名解析服务器)专门进行域名到ip的翻译工作。
如果我们想要让www.baidu.com能够访问当前虚拟主机,还需要到dns服务器中进行配置,将www.baidu.com和本机ip地址进行绑定才可以。
如何修改?
在c:/windwos/system32/drivers/etc/hosts文件可以模拟dns的功能,浏览器在访问dns之前会首先检查该文件,如果这个文件中配置过域名ip映射,则会直接使用而不再去找dns服务器了。所以我们可以在hosts文件中进行如下配置(加入一行127.0.0.1 www.baidu.com)该操作需要管理员权限,且中间必须用tab键隔开
3、启动Tomcat服务器,打开浏览器地址栏输入localhost/www.baidu.com,会弹出自己预先写好的html页面,此时用百度再去搜索其它东西是没用的,把hosts文件添加的那一行删去保存即可恢复正常
注意:如果Tomcat下载之后没有修改过tomcat文件下的server.xml文件,则应写为localhost:8080/www.baidu.com,此时即可访问www.baidu.com文件下的html文件
html文件代码模版
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content Type" content="text/html charset=utf-8"/>
</head>
<body>
<p>暗中观察...<p>
<img src="../www.baidu.com\1.jpg" alt="picture"></img>
</body>
</html>
效果图:
关于图片不显示问题的解决办法:
1、图片最好设置为相对路径;
2、如果已经设置为相对路径仍然无法显示,把图片移动到Tomcat的webapps下,将图片部署到服务器上(启动Tomcat会自动部署),然后使用相对路径即可,正如步骤1中我直接将图片放在www.baidu.com文件下,所以相对路径是../www.baidu.com\1.jpg