web服务器
web服务器
技术讲解
ASP
- 微软
PHP(中小型企业):
- PHP开发速度很快,功能强大,跨平台,代码实现简单
- 缺点在于无法承载大访问量的情况(局限性)
JSP/Servlet:
-
sun公司主推的B/S架构(浏览器/服务器架构)
-
主要实现语言基于Java(所有的大公司,或一些开源组件,都是用Java写的)
-
可以承载三高问题带来的影响
-
语法像ASP, ASP-->JSP,加强市场强度
web服务器
服务器是一种被动的操作,用来处理一些用户的请求和给用户一些相应信息
IIS
微软的,ASP....Windows中自带
Tomcat
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0.39
Tomcat
安装tomcat
解压即可
Tomcat启动配置
- 启动\关闭tomcat
注意:要确认配置好Java环境
- 配置
修改端口
默认端口8080
http:80
https:443
mysql:3306
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
修改主机
默认主机名: localhost->127.0.0.1
默认网站应用存放的位置为:webapps
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
- 发布一个web网站
- 将自己写的网站放在服务器Tomcat中指定的web应用文件夹webapps下,就可以访问了
网站应该具有的结构
-- webapps : Tomcat服务器的web目录
-Root
-study : 网站的目录名
- WEB-INF
-classes : java程序
-lib : web应用所依赖的jar包
-web.xml : 网站配置文件
- index.html 默认的首页
- static
-css
-js
-img
面试题
请你谈谈网站是如何访问的
-
输入一个域名;回车
-
检查本机的C:\Windows\System32\drivers\etc\hosts配置文件下有没有这个域名映射
-
有: 直接返回对应的ip地址,这个地址中,有我们需要访问的web程序,可以直接访问
127.0.0.1 www.cnpoalris.com
-
没有: 去DNS服务器找,找到的话就返回,找不到就返回找不到
-
Http
什么是HTTP
HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上.
-
文本: html,字符串
-
超文本: 图片,视频,音乐等
-
端口:80
https:安全的
- 端口:443
两个时代
- http1.0
- HTTP/1.0: 客户端可以与web服务器连接后,只能获得一个web资源,断开连接
- http2.0
- HTTP/1.1: 客户端可以与web服务器连接后,可以获得多个web资源
HTTP请求
- 客户端--发送请求--服务器
请求 URL: https://www.baidu.com/
请求方法: GET
状态代码: 200 OK
远程地址: 180.101.49.11:443
引用站点策略: strict-origin-when-cross-origin
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Cache-Control: max-age=0
Connection: keep-alive
-
请求行
- 请求行中的请求方式:GET
- 请求方式: Get Post HEAD DELETE
- get: 请求能够携带的参数比较少,大小也有限制,会在浏览器的url地址栏中显示数据内容,不安全,但是高效
- post: 请求能够携带的参数没有限制,大小没有限制,不会再地址栏显示内容,安全,但不够高效
-
消息头
Accept: 告诉浏览器,支持的数据类型 Accept-Encoding: 支持那种编码格式 Accept-Language: 告诉浏览器,他的语言环境 Cache-Control: 缓存控制 Connection: 告诉浏览器,请求完成后是断开还是保持连接 HOST: 主机
HTTP响应
- 服务器--响应--客户端
Cache-Control: private 缓存控制
Connection: keep-alive 连接
Content-Encoding: gzip 编码
Content-Type: text/html;charset=utf-8 类型
- 响应体
Accept: 告诉浏览器,支持的数据类型
Accept-Encoding: 支持那种编码格式
Accept-Language: 告诉浏览器,他的语言环境
Cache-Control: 缓存控制
Connection: 告诉浏览器,请求完成后是断开还是保持连接
HOST: 主机
Refresh: 告诉客户端,多久刷新一次
Localtion: 让网页重新定位
- 响应状态码
- 200 请求响应成功
- 3** 请求重定向
- 重定向: 重新转到新的位置
- 4xx 找不到资源 404
- 5xx: 服务器代码错误 500 502(网关错误)