Tomcat配置Web站点(转载)
http://blog.csdn.net/liuxiaogangqq/article/details/8074758
Javaweb初学,Web应用程序简介
应用程序:指允许用户执行特定任务的软件程序,主要分为桌面应用程序和Web应用程序两种类型。
桌面应用程序(Desktop Application):一般是指采用客户机/服务器结构(Client/Server)的应用程序。
C/S模式将应用与服务分离,系统具有稳定性和灵活性
C/S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性
由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快
在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂
Web应用程序:一般指采用浏览器和服务器结构(Browser/Server,简称B/S结构)的应用程序。
Web应用程序由Web服务器和Web客户端组成。
Web服务器:Web服务器上装有某个应用程序,这个Web服务器应用程序负责接收客户请求进行处理,向客户返回结果
Web客户端:允许用户请求服务器上的某个资源,并且向客户端返回结果。Web应用程序的客户端一般是指Web浏览器。Web浏览器就是一个软件,它知道怎么与服务器通信,它还有一个重要任务,就是解释HTML代码,把Web页面呈现给用户
B/S模式的优点:
(1)易于维护:基于B/S模型的系统当需要升级或维护时,只需修改服务器程序即可。
(2)易于实现。B/S模型的表现层可以用制作网页的html来实现,浏览器和网页设计技术已经相当成熟。而且用Java技术开发的Web系统可以安装在任意一种服务器系统平台上,也就是常说的具有跨平台性。
(3)使用方便,无论客户在什么地方,只要服务器正在运行,客户就能通过网络进行连接,实现对数据的访问和操作。
浏览器可以直接打开本地硬盘上的一个文件(从本地硬盘上打开一个网页文件),也可以从远端的web服务器上打开一个网页文件。
默认端口是80,可以缺省。
微软的IIS,或是开源的apache,但是都不能直接运行后面讲的jsp等,
在一般应用情况下,只需要tomcat作为web服务器软件即可,只在一些特殊的情况下才需要将tomcat和apache或IIS集成。
如果一个网站的访问量很大,那么一台web服务器根本不可能招架得过来,这时我们就需要多台web服务器共同来进行处理,这样就可以减少一台服务器的负荷。但是不管是哪个服务器在处理请求,那么客户机浏览器得到的结果应该和访问单独的服务器的效果一样。客户端浏览器根本就不知道他的这次请求和上次请求可能是由不同的服务器处理的,这就要求这里的每台web服务器上的内容完全一样,运行时所产生的状态也应该同步、一致。满足这种要求的多台服务器就构成了web服务器集群系统。当一个网站使用了这样的web服务器集群系统后,客户端浏览器不应该知道服务器端有多台这样web服务器,客户端浏览器始终访问的是同一个ip地址,这时我们就需要这样一个设备,将这些客户端浏览器发送的同一个ip地址请求分配给多台web服务器,这就是负载均衡系统。所有客户端的访问请求都是路由到负载均衡系统上的,然后负载均衡系统跟踪和记录每个web服务器的负荷量,然后将请求分配给负载较轻的web服务器处理,这就是负载均衡系统的作用。数据库集群系统和web服务器集群系统的功能和工作原理差不多。
另外,一些大型的网站为了提高客户端浏览器的访问效率,减少骨干网络上的流量,在不同的地区设置了区域代理服务器。不同区域的客户端浏览器访问的是区域代理服务器,而不是直接访问远端的web服务器。像新浪这个网站采用的基本上就是这样的架构。当咱们通过浏览器访问“www.sina.com“时,访问的不是在北京的web服务器,而是新浪在河北省的区域代理服务器。
为了使不同区域的浏览器能透明地访问web站点的内容,而是用户感觉不到访问的是区域代理服务器,需要在dns系统中将www.sina.com主机名执向所有的区域代理服务器,当浏览器要访问www.sina.com时,首先向dns服务器请求ip地址,dns根据浏览器的ip地址判断出浏览器所在的区域,返回的是区域的代理服务器的ip地址。如果浏览器访问的网页文档在区域代理服务器中还没有,则需访问web服务器得到要访问的文档返回给区域代理服务器。
javaweb:使用java技术开发web页面。供浏览器访问的项目
WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。
Internet上供外界访问的Web资源分为:
静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变。
动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。
静态web资源开发技术
Html
常用动态web资源开发技术:
JSP/Servlet、ASP、PHP等
在Java中,动态web资源开发技术统称为Javaweb,我们课程的重点也是教大家如何使用Java技术开发动态的web资源,即动态web页面。
常见WEB服务器
WebLogic是BEA公司的产品,是目前应用最广泛的Web服务器,支持J2EE规范,而且不断的完善以适应新的开发要求,收费
另一个常用的Web服务器是IBM公司的WebSphere,支持J2EE规范,收费;
在小型的应用系统或者有特殊需要的系统中,可以使用一个
免费的Web服务器:Tomcat,该服务器支持全部JSP以及
Servlet规范,
Tomcat官方站点:http://jakarta.apache.org
Tomcat
获取Tomcat安装程序包
tar.gz文件是Linux操作系统下的安装版本
exe文件是Windows系统下的安装版本
zip文件是Windows系统下的压缩版本 (一般都是这个)
双击 bin 目录下的 startup.bat 文件
输入 http://localhost:8080/,能打开一个网页就ok了
JAVA_HOME环境变量
在windows中设置JAVA_HOME环境变量
只要在setclasspath.bat批处理文件第一次使用JAVA_HOME环境变量之前的任何地方,将JAVA_HOME环境变量设置为JDK的主目录,就可以使用startup.bat文件启动Tomcat了。
端口占用问题 :netstat -na命令和fport工具(可以查看有哪些网络端口号被监听)
WEB应用程序指供浏览器访问的程序,通常也简称为web应用。
一个web应用由多个静态web资源和动态web资源组成,如:
html、css、js文件
Jsp文件、java程序、支持jar包、
配置文件等等…..
组成web应用的这些文件通常我们会使用一个目录组织,这个目录称之为web应用所在目录。
Web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚似目录的映射。
虚似目录的映射有三种方式:
1、在server.xml文件的host元素中配置,
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/abc" docBase="D:\aaa" />
</Host>
2.在Tomcat6中,不再建议在server.xml文件中配置context元素,(需要重启服务器) 细节查看tomcat服务器关于context元素的说明。
3、让tomcat自动映射: tomcat服务器会自动管理webapps目录下的所有web应用,并把它映射成虚似目录。换句话说,tomcat服务器webapps目录中的web应用,外界可以直接访问。
开发web应用时,不同类型的文件有严格的存放规则,否则不仅可能会使web应用无法访问,还会导致web服务器启动报错。
Web.xml文件是整个web应用中最重要的配置文件,它必须放在WEB-INF目录中。在开发web应用时,但凡涉及到对web应用中的web资源进行配置,通通是在web.xml文件中进行设置。例如:
某个web资源配置为网站首页
将servlet程序映射到某个url地址上
为web应用配置监听器
为web应用配置过滤器
……
认识web.xml文件的作用:
通过web.xml文件把某个web资源配成网站首页。
部署描述符文件
<WEB应用程序>/WEB-INF/web.xml
<Tomcat主目录>/conf/web.xml
目录的默认网页文件
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
在一个tomcat服务器中可以放置多个网站,所谓配置虚似主机,就是在tomcat服务器中配置一个网站。
如需在WEB服务器中配置一个网站,需使用Host元素进行配置,例:
配置的主机(网站)要想被外部访问,必须在DNS服务器或windows系统中注册。
配置多个网站。
缺省虚似主机。