浅说http

看到防盗链就得思考一下http,所以现在说点http基础(个人理解)

一、浅谈http协议:

1、http协议是基于tcp/ip协议,tcp协议大概共有7层,应用层,传输层,表示层,会话层,数据链路层,物理层,网络层,但实际综合只有四层数据段、数据包、数据帧、比特流,如下图:


2、HTTP是Hyper Text Transfer Protocol(超文本传输协议)大概了解它有1.0版本即短连接、1.1版本即长连接(今天普遍使用长连接)

3、HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议

4、HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。默认HTTP的端口号为80,HTTPS的端口号为443。

二、简单知识:

(一、)请求服务器的部分
host:主机名
user-agent:浏览器的信息,可以看出其内核,操作版本
accept :浏览器把支持的数据格式 html/xml/application
accept_languange:浏览器所支持的语言
accept-enconding:浏览器所支持的压缩格式
connection:保持连接
conten-type:客户端向服务器所发送的数据类型
content-length:客户端向服务器所发送的数据的长度,(这里需要是post的才有,因为get方式会将数据以名值对的形式写的地址栏上

cookie:客户端向服务器发送的cookie(数据)
referrer: 当网页是由哪个页面跳转而来的
if-modified-since:访问客户端此次请求的文件,服务器有没有修改过
二、响应服务器的部分
响应头
响应的报头
空行
数据
响应头包含的协议与版号状态码(status) 状态码的描述
常用的状态码:200(成功),404(请求的文件不存在) 403(请求有权限)、304(取缓存页面)

响应的报头:
date:处理的时间
server:服务器的信息
last-modified:请的文件的最后修改时间
content-length:服务器响应的数据长度
content-type:服务器响应的数据的类型
空行
响应的数据

三、php模拟http响应
设置编码:
header("Content-tyep:text/html;charset=utf-8");
重定向
header("loaction:跳转的url");
header("refreshe:时间,url='路径'");

①修改http内容,告诉浏览器,实现文件下载
<?php
header("content-type:application/octet-stream");
header("content-disposition:attachement;filename=文件名");
echo file_get_contents("真实文件名");

?>


②通过header来禁用缓存

header("Expires:-1");

header("Cache-control:no-cache");

header("Progrma:no-cache");


---------后续再补上,防盗链案例!!!!



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值