一、web服务
1.1 中间件简介
中间件其实就是一类软件,中间件的作用是让用户可以看到一个网页
总结:客户端可以向服务端发送请求,服务器端会通过中间件程序来接收请求,然后处理请求,最后将处理结果返回给客户端
1.2 中间件软件程序:
- iis:Windows服务器自带的中间件
- nginx:支持跨平台,可以运行在各种系统,Windows/linux/unix....
- apache:支持跨平台,可以运行在各种系统,Windows/linux/unix....
- Tomcat:支持跨平台,可以运行在各种系统,Windows/linux/unix....
注意:一般情况下,中间件程序占用的端口是80
1.3 两种常见的web应用程序架构:
lamp:Linux、apache、mysql、php
lnmp:Linux、nginx、mysql、php
1.4 http协议
http协议:Hyper Text Transfor Protocol
作用:让用户通过浏览器发送请求到服务器端,并且接收客户端返回过来的数据,最后在浏览器展示出来
1.4.1 http请求报文格式:
格式:
第一行: 请求行 第二行~空白行: 请求头 空白行下面: 请求体
案例:
GET /download/a.html HTTP/1.1 Host: www.baidu.com Connection: close sec-ch-ua: "Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "Windows" Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) Ap0.0.0 Safari/537.36 Sec-Purpose: prefetch;prerender Purpose: prefetch Accept: text/html,application/xhtml+xml,application/xml;q=0.9,i=0.8,application/signedexchange;v=b3;q=0.7 Sec-Fetch-Site: none 注意:这是GET传参,GET传参是没有请求体的,请求体和请求头结合了
请求行的格式:
第一部分: 请求方法:GET/POST 第二部分: 请求的URL 第三部分: 客户端使用的HTTP协议版本号 http 0.9 http 1.0 http 1.1
请求头的内容:
Host: 指定目标网站的域名或IP地址 Connection: 当前客户端的链接状态 User-Agent: 指定客户端访问网站的时候使用的浏览器 Referer: 表示当前这个请求是直接访问过来的,还是从其他的网站跳转过来的
1.4.2 http响应报文格式:
格式:
第一行: 响应行 第二行~空白行: 响应头 空白行下面: 响应体
案例:
HTTP/1.1 / 200 OK Content-Security-Policy: frame-ancestors 'self' http Content-Type: text/htm