概述
-
HyperText Transfer Protocol超文本传输协议,工作在应用层,制定了网页(超文本)数据传输标准。
-
底层依赖传输层TCP/80端口实现数据传输。
-
软件架构:
- C/S(client/server):客户端/服务器,用户需要下载安装特定客户端程序,才能使用软件资源;
- B/S(browser/server):浏览器/服务器,用户只需要使用统一的浏览器就可使用软件资源;
-
常见的web服务器程序软件:
- Apache Tomcat
- Apache
- JBOSS
- Nignx
- 微软IIS
- 等
-
常见的web资源:
- 网页资源:HTML、JSP、PHP、ASP等
- 样式资源:CSS、SCSS等
- 交互效果资源:JS(JavaScript)
- 图片资源:jpg、png、jpeg、gif等
-
常见数据库
- Oracle
- MySQL
- SQL server
- Redis
- 等
-
集成环境
- XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。
- PHPStudy是一个PHP调试环境的程序集成包。该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。
URL
-
统一资源定位系统(uniform resource locator;URL)是因特网的万维网服务程序上用于指定信息位置的表示方法,俗称网址。
-
格式:
协议://主机名:端口号/资源路径?附加信息- http://192.168.126.133:80/dashboard/index.html
- www.baidu.com:443/index.php
- 协议:标准指定,一般为http或https;
- 主机名:定位目标服务器主机,一般使用域名或IP;
- 端口号:定位目标服务程序,一般http协议默认端口为80,https协议默认端口为443;
- 资源路径:定位具体访问资源位置,一般参照服务器软件指定文件夹的相对路径;
- 附加信息:可选内容,一般为发送给服务器的数据;
web服务器环境搭建
准备环境资源
- xampp安装包
- web网址资源:xindai(前端和后端资源)、xindai.sql(数据库资源)
安装xampp
- 一路next,无特别操作
准备web资源
- 将web资源解压
- 将web资源复制到xampp下的
htdocs文件夹中,
- 启动Apache服务器和MySQL数据库软件
- 输入URL访问web项目资源
http://服务器IP:80/xindai/
- 修改web资源中程序访问数据的密码
- 客户端重新访问web网页
创建web项目数据库
- 以root账户身份登录mysql
mysql -uroot
- 创建web项目数据库
create database 数据库名称;create database xindai;
- 查看数据库
show databases;
- 进入web项目数据库;
use 数据库名称;use xindai;
- 导入web项目数据;
source 数据库文件路径;source C:\Users\Administrator\Desktop\xindai.sql;
- 查询web项目表数据;
show tables;
- 客户端重新访问服务器资源,访问成功
请求与响应
- 请求是客户端发送给服务器的数据包,该数据包发送的目的是为了向服务器获取web相关资源;
- 响应是服务器发送给客户端的数据包,该数据包会将客户端请求数据包的响应结果发送给客户端;
- HTTP协议制定了请求与响应数据包标准,一个请求数据包只能请求服务器的一个资源;
请求类型
- GET:向服务器索取资源的请求;
- POST:向服务器提交数据的请求;
mine-type
- minetype是一个用于标识文件内容类型的字符串,广泛应用于HTTP响应头、电子邮件、文件管理系统等场景。
请求(request)
概述
- 请求数据包是客户端发送给服务器的数据包,该数据包携带了客户端要告诉给服务器的相关数据;
格式
- 请求头(header)
- 请求首行:
请求类型 资源路径 HTTP版本
- 请求首行:
GET /xindai/index.php HTTP/1.1
- 键值对
Accept:可以接收处理的资源类型Accept-Encoding:可以接收处理的编码格式Accept-Language:可以接收处理的语言Cache-Control(Pragma):缓存控制Connection:连接方式,keep-alive表示保持活连接(长连接)Cookie:存储到客户端的数据Host:目标服务器主机Upgrade-Insecure-Requests: 是否可以升级不安全请求,将不安全请求(HTTP)升级为安全请求(HTTPS)User-Agent:用户代理信息,包含客户端环境信息
请求正文(body)
- GET请求没有请求正文,POST请求正文是提交到服务器的数据;
{"tel":"13522226666","password":"1111111","captcha":"2752","loginType":1}
响应状态码
- 是用以表示网页服务器超文本传输协议响应状态的3位数字代码。
常见响应状态码
- 200:响应成功
- 301:永久性重定向,表示该资源已经使用新的资源路径,以后使用新的路径进行访问;
- 302:临时性重定向,表示该资源已经使用新的资源路径,希望本次请求使用新的路径进行访问;
- 400:请求报文中存在语法错误(Bad Request)
- 401:当前请求需要用户验证(鉴权不通过)。
- 403:服务器拒绝。
- 404:资源找不到。
- 500:服务器错误,服务器执行请求时发生了错误。
响应(response)
概述
- 服务器发送给客户端的数据包,该数据包携带了服务器要告诉给客户端的相关数据;
格式
响应头(header)
- 响应首行:
HTTP版本 响应状态
Date: 响应时间Server: 服务器环境信息X-Powered-By:使用的技术框架Expires:响应资源被使用的过期时间Cache-Control(Pragma):缓存控制Keep-Alive:timeout=5, max=100,控制活连接关闭条件,timeout超时控制,单位为秒,max最大数据量Connection: Keep-AliveTransfer-Encoding:传输编码Content-Type:内容类型Content-Length:内容长度(内容大小)
响应正文(body)
- GET请求响应正文一般为请求的资源内容;
- POST请求响应正文一般为数据处理结果;
{"code":401004,"msg":"该用户不存在,请先注册"}