Web概述(二)

Web概述(二)

1. 什么是Web

在这里插入图片描述
更加全面的介绍请看之前的概述(一)。

2. 什么是JavaWeb

使用java语言进行Web开发。

3. Web的架构

3.1 C/S结构的软件

即我们常说的客户端/服务器,这类软件通常需要安装。如QQ,迅雷,播放器。(服务器-客户机,即Client-Server(C/S)结构。C/S结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。)

  • 优点
    可以减轻服务器的压力,一部分的代码可以放在客户端执行。应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。
    数据的储存管理功能较为透明。界面美观
  • 缺点
    一但服务器更新,客户端也要更新。系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
    分布式开发较弱。对客户端的操作系统一般也会有限制。可能适应于Win98, 但不能用于Windows2000或Windows XP。

3.2 B/S结构的软件

即浏览器/服务器结构。B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。

  • 优点
    服务器更新,客户端不用更新。因为浏览器就是客户端。B/S架构最大的优点是总体拥有成本低、维护方便、 分布性强、开发简单,可以不用安装任何专门的软件就能 实现在任何地方进行操作,客户端零维护,系统的扩展非常容易,只要有一台能上网的电脑就能使用。
    分布式开发较强
  • 缺点
    服务器压力相对较大,最大的缺点就是通信开销大、系统和数据的安全性较难保障。
    界面不如客户端效果

3.3 两种结构对比

在这里插入图片描述

4. Web服务器介绍

Web服务器是指驻留于因特网上某种类型计算机的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。服务器使用HTTP(超文本传输协议)与客户机浏览器进行信息交流,这就是人们常把它们称为HTTP服务器的原因。

简单点说:

  • 硬件说:是一台电脑(配置较高)
  • 软件上:需要在该电脑上安装对应的Web软件

4.1 常用的Web服务器

大型或者中型服务器

  • Tomcat:Apache开源的一个免费的web服务器,遵循Java ee的servlet和JSP规范。
  • Apache:Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。它源于NCSAhttpd服务器,当NCSAWWW服务器项目停止后,那些使用NCSA WWW服务器的人们开始交换用于此服务器的补丁,这也是apache名称的由来(pache 补丁)。世界上很多著名的网站都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。运行在PHP平台上
  • WebSpere:IBM开发的一个大型收费web服务器,满足EE开发的所有规范
  • WebLogic:BEA开发的一个大型收费web服务器,满足EE开发的所有规范;BEA WebLogic Server 在使应用服务器成为企业应用架构的基础方面继续处于领先地位。
  • IISMicrosoft的Web服务器产品为Internet Information Services (IIS),IIS 是允许在公共Intranet或Internet上发布信息的Web服务器。ⅡS是目前最流行的Web服务器产品之一,很多著名的网站都是建立在ⅡS的平台上。IIS提供了一个图形界面的管理工具,称为Internet服务管理器,可用于监视配置和控制Internet服务。运行在.net平台上
  • JBoss:是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用,而不用支付费用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。

4.2 Web的资源

  • 静态的Web资源
    如HTML、CSS、JavaScript
  • 动态的Web资源
    如Servlet,JSP,PHP,ASP等。

5.常用服务器Tomcat

5.1 安装过程容易出现的问题

安装过程中:

5.2 Tomcat的目录结构

在这里插入图片描述

  • bin:二进制文件(一些命令文件,如start.bat启动文件和关闭文件等)
    在这里插入图片描述

  • conf:配置文件(如server.xml和logging.properties等文件)在这里插入图片描述

  • lib:运行Tomcat所需要的一些jar包。在这里插入图片描述

  • logs:运行Tomcat产生的日志信息。包括报错信息等。在这里插入图片描述

  • temp:运行Tomcat所产生的临时文件在这里插入图片描述

  • webapps:Web项目文件,需要发布的Web项目都要放在这个目录下面。在这里插入图片描述

  • work:JSP文件所翻译成servlet对应的文件(java类)在这里插入图片描述

5.3 动态Web资源的目录结构(重要!)

动态Web资源目录

  • 静态资源(HTML+CSS+JavaScript)
  • JSP页面
  • Web-INF文件夹
    Web.xml(包含web的一些配置文件信息,如servlet过滤器)
    classes文件夹(可选)
    lib文件夹(包含项目用到的第三方jar包等,可选)

如我写的一个项目,其结构如下:
在这里插入图片描述

5.4 Tomcat项目发布方式

5.4.1 方式一:直接将项目复制到Webapps目录下

第一步:
在这里插入图片描述
第二步:开启服务器,测试。
在这里插入图片描述

在这里插入图片描述

5.4.2 方式二:在Tomcat的conf/server.xml里面配置相应的虚拟路径

如图,添加Context标签。
在这里插入图片描述

<Host>标签里面配置<Context>便签,必须添加属性:path,docBase。

  • path是Tomcat里面的虚拟路径
  • docBase是对应的真实磁盘路径。不用具体到index.html,否则启动Tomcat会报错:java.lang.IllegalArgumentException:指定的主资源集无效。因为server.xml配错一点都会使得Tomcat无法使用,server.xml是核心配置文件,官方不推荐该方式部署项目。

测试:
在这里插入图片描述

5.4.3 方式三:在Tomcat的conf/Catalina/localhost/下配置Tomcat的虚拟路径(官方推荐)
  • conf/Catalina/localhost/创建需要的项目文件name.xml,项目的名字name对应着我们方式二里面的path。(我这里是third_program.xml)

  • 将方式二里面的server.xml的context内容放到该文件里面
    在这里插入图片描述

  • 在docBase对应的真实目录配置好Web项目。
    在这里插入图片描述

  • 启动服务器,访问。
    在这里插入图片描述

5.5 Tomcat的虚拟主机配置

我们大概都知道网站的访问过程如图:
在这里插入图片描述
那么到底要在服务器上如何配置呢?

5.5.1 什么是虚拟主机

虚拟主机:在电脑上设置一个目录,使用一个名称与该目录绑定。这个路径称为虚拟主机,这个主机是可以发布Web项目的。

5.5.2 虚拟主机的配置
  • 我们先抓取一个网页,比如百度
    在这里插入图片描述

第一步,下载相关的网页资源,按照图示保存
在这里插入图片描述

baidu是虚拟主机的目录,website是项目

第二步,修改Tomcat的server.xml
在conf的目录下,找打serverl.xml,在添加如下的内容:
在这里插入图片描述

第三步,修改自己的host文件,配置本地域名解析
在这里插入图片描述

在C:\Windows\System32\drivers\etc打开hosts,添加相关的配置信息,首先需要知道自己电脑的ip地址,打开cmd,输入ipconfig,得到自己的ip地址
在这里插入图片描述
回到hosts里面配置:
在这里插入图片描述

然后保存退出。

第四步,尝试启动Tomcat服务器访问该项目

win+r,输入cmd。打开命令窗口。然后启动Tomcat,打开谷歌浏览器:
输入网址:http://www.baidu.com:8100/website/baidu.html

在这里插入图片描述
我们发现

在这里插入图片描述
尝试使用微软的浏览器打开该网址:
在这里插入图片描述
打开Tomcat报错信息:
在这里插入图片描述
观察到可能是协议的问题。于是查看协议。注意到网址上面使用的协议是https,我们将https改为http:
在这里插入图片描述

最后加载成功!。

在这里插入图片描述

5.5.3 一个思考问题

输入网址:http://www.baidu.com:8100/website/baidu.html很长,难记。而我们输入:www.baidu.com就可以进入百度网页,这是如何做到的呢?

  • 需要修改Tomcat的端口号,将端口改为http协议的默认端口号80,这个时候我们只需要输入网址为:http://www.baidu.com/website/baidu.html在这里插入图片描述
  • 在Tomcat的conf/server.xml配置文件中自己添加的host里面配置context标签,此时我们输入的网址仅为http://www.baidu.com/baidu.html
    在这里插入图片描述在这里插入图片描述
  • 修改默认加载文件设置,在cong/web.xml里面添加baidu.html为默认加载页面之一,添加<welcome-file>baidu.html</welcome-file>,这个时候我们直接输入www.baidu.com就可以访问了。
    在这里插入图片描述
    为了突出效果,我把baidu.html修改一下:在这里插入图片描述
    现在在微软浏览器输入:www.baidu.com,效果如:在这里插入图片描述
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨夜※繁华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值