(23) PHP 随笔---http协议 http详解

◇http协议(超文本传输协议):

  ◇1、http协议是建立在tcp/ip 协议基础上。

  ◇2、我们的web开发数据的传输都是依赖此http协议。

◇http有1.0版本(短连接)    有1.1版本(长连接)

◇http结构:1、请求头      2、消息头      3、消息体(实体内容)  

  ◇消息头结构如下:

    ◇Refresh:表示“我是从哪里来的”

    ◇Accept-Language:zh-cn :页面语言

    ◇User-Agent: 告诉服务器我的浏览器内核,操作系统

    ◇Accept-Encoding:表示接受什么样的数据压缩格式

    ◇Host:主机和端口号

    ◇Connection:表示不要立即断开我们的请求

◇在服务端,我们可以通过$_SERVER来获取我们想要的信息

  ◇REMOTE_ADDR       访问该页面的ip

  ◇DOCUMENT_ROOT      可以获取apache的主目录

  ◇REQUEST_URL          可以获取请求的资源名

◇http请求方式 :     GET   和  POST    两种主要的方式

  ◇get和post区别;

    ◇相同:作用都是向服务器发送数据。

    ◇不同点: 

        ◇1、安全性:get请求的数据会显示在地址栏上,post请求的数据会放在http协议中的消息体中。

        ◇2、从可提交的数据的大小上来看:

            ◇2.1、http协议本身并没有限制数据的大小

            ◇2.2、主要是浏览器在对get和post请求做限制

        ◇3、get的优点:更利于用户将网站收藏至收藏夹:(收藏网页地址)

防盗链技术:REFERER:确定用户进入当前页面的上次个页面的url,以便程序员封杀从外面网站定向到该页面的用户。

1 if(isset($_SERVER)['HTTP_REFERER'])
2 {
3         if(strpos($_SERVER['HTTP_REFERER'],"http://localhost/")==0)           //判断$_SERVER['HTTP_REFERER']是不是以http://localhost/打头的,strpos函数用来确定从第几个字符开始出现重复的
4  
5           echo   "你有权进入该页面";       
6 }   

◇请求头描述了客户端向服务器发送请求时使用的http协议类型,所用的编码,以及发送内容的长度,refer等等。

◇响应头是用来描述服务器回给你对所返回的content的一些一些描述,我是什么服务器,我返回的是啥编码,我返回的内容有多长。

◇响应头实体信息:

  ◇HTTP/1.1 200 OK                    1.1 表示长连接     200   ok   表示客户端请求成功

    ◇302状态码:告诉浏览器区别的url找(转向,或者重定向)

    ◇304状态码:如果缓存中有该资源,则从缓存中调用(告诉浏览器,资源没有修改,无需再获取)

    ◇404状态码:页面不存在

  ◇Server:Mirosoft-IIS/5.0           告诉浏览器 服务器的情况

  ◇Refresh:3                               表示延迟3秒再进行重定向

1 <?php
2             header("Refresh:3;url=http://localhost/http/d.php");
3 ?>

  ◇Last-Modified:                  表示浏览器请求资源最新时间。

◇通过header来禁用缓存:

1 <?php
2           head("Expires:-1");
3           head("Cache-Control:no_cache");
4           head("Pragma:no-cache");
5 ?>

 

posted @ 2016-03-09 10:00  考拉爱喵喵  阅读(129)  评论(0编辑  收藏  举报