一:web应用组织结构
1:web应用组成结构
2:安装web组成机构手动创建一个web应用程序目录
a:在webapps下创建目录web
b:在web目录下创建html、jsp、css、js、WEB-INF等目录以及index.html访问首页文件
c:在html、jsp、css、js目录中写对应的文件,在WEB-INF目录创建classes、lib以及web.xml文件
d:启动服务器,访问:
默认访问index.html
如果将web设置成服务器默认访问的应用程序,那么只需要访问localhost:8080,在server.xml文件中host元素下
<Context path="" docBase="F:\apache-tomcat-6.0.45-windows-x86\apache-tomcat-6.0.45\webapps\web"></Context>
path属性设置为“”,docBase根据自己的路径而定,重启服务器,然后访问:
如果将连接器端口修改80,那么访问地址就可以是localhost
二:web.xml文件的作用
1:网站首页
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
2:将servlet程序映射到某个url地址上
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
将所有的*.do请求映射到org.springframework.web.servlet.DispatcherServlet类上
3:配置监听器
<listener></listener> 具体格式可以百度
4:配置filter过滤器
三:配置虚拟主机搭建网站
1:用户从输入url到获取信息的流程
a:用户在浏览器地址栏输入网址url,例如:http://www.baidu.com
b:首先www.baidu.com这个主机名会到windows下面C:\Windows\System32\drivers\etc路径下hosts文件中寻找ip
根据主机名去匹配对于的ip。找到就直接访问,如果没有找到就访问DNS服务器。
c:比如在dns服务器获取到www.baidu.com 的ip为111.13.100.91
d:根据ip建立连接,向111.13.100.91的80端口发送请求,如果已经配置默认的web应用,就会直接访问web应用。
e:web应用处理请求,然后将响应返回,浏览器渲染响应数据,展示给用户。
2:在本地搭建一个网站
a:在E:盘建立创建一个web应用程序,在web.xml中设置访问的首页为index.html
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
b:在server.xml中配置<Host>元素,名称为www.warrior.com ,默认访问web应用程序
<Host name="www.warrior.com" appBase="E:\web">
<Context path="" docBase="E:\web"/>
</Host>
c:在hosts文件设置主机名与ip的映射
127.0.0.1 www.warrior.com
一切ok,然后重启服务,访问:
访问成功!
如果希望将自己的web应用程序发布到互联网上,让别的城市的用户访问,那么需要购买域名,在DNS上面注册
将域名与自己主机的ip地址绑定。
四:其他问题
1:web资源的访问过程可以参考第三部分配置虚拟主机
2:打包web应用war,服务器会把war包自动解压,打包方式,cd web应用所在目录, jar -cvf web.war web
只需要将war包拷贝到webapps目录下,服务器自动解压。
3:配置context元素reloadable属性,配置这个属性可以在修改web应用后自动加载,如果web应用比较小
可以使用一下,如果web应用比较大,不建议使用,很容易造成内存溢出。
4:tomcat体系结构
tomcat服务器启动时,首先启动server,然后启动一个service,service里面有多个连接器,然后找到引擎,通过引擎找到
那个主机(这个主机名是请求时携带的),然后找到某个应用。体系架构可以参考conf目录下的server.xml文件。