微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP中的http协议

http协议基本组成


报文:用于Http协议交互的信息

请求行:包括请求的方法,URL和HTTP协议版本

状态行:包括响应结果的状态码,状态描述和Http版本

首部字段:包括请求和响应的各种条件和属性值(键值对)

 


 下面通过一个实例来进行演示:

在localhost目录下建立index.PHP

1 2 3 <?PHP     echo "Http demo"; ?>

  接下来,在浏览器中打开localhost


 


一共三部分信息。

 

telnet模拟Http请求

1. cmd下->telnet主机地址 80

2. 按下快捷键:ctrl+"]" 再按下回车键 打开回显功能

3. 发送请求报文

 

'telnet' 不是内部或外部命令,也不是可运行的程序,解决方法:控制面板 -> 程序 -> 打开或关闭Windows功能 -> 勾选Telnet客户端 -> 确定。Win + R打开cmd窗口,输入以下命令。

C:\Users\ThinkPad>telnet 127.0.0.1 80

接着回车后按下Ctrl + ] 打开回显功能,然后再按回车键。


输入请求行后回车。


 分析内容含义:

GET(请求方法) /index.PHP(请求URL) HTTP/1.1(http协议版本)----->请求行
Host:localhost(请求首部)
(空行)
响应内容
HTTP/1.1 200(响应结果状态码) OK(状态描述)
Date: Sun, 12 Mar 2017 13:25:07 GMT
Server: Apache/2.4.4 (Win32) OpenSSL/1.0.1e PHP/5.5.3
X-Powered-By: PHP/5.5.3
Content-Length: 14
Content-Type: text/html
(空行)
锘縣ttp demo

 修改index.PHP内容如下:

1 2 3 4 5 <?PHP     //echo "Http demo";     $str = implode($_POST,"\n");     echo $str; ?>

  在环境变量的系统变量path属性添加C:\Windows\System32;即可满足cmd粘贴功能

下面演示POST请求:


 

 

POST /index.PHP HTTP/1.1(请求行)

HOST:localhost
Content-type:application/x-www-form-urlencoded(首部)
content-length:20(下面是空格)

act=query&name=ghostHTTP/1.1 200 OK
Date: Sun, 12 Mar 2017 14:10:51 GMT
Server: Apache/2.4.4 (Win32) OpenSSL/1.0.1e PHP/5.5.3
X-Powered-By: PHP/5.5.3
Content-Length: 16
Content-Type: text/html

锘縬uery
ghost

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐