zoukankan      html  css  js  c++  java
  • 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:UsersThinkPad>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," ");
        echo $str;
    ?>

      在环境变量的系统变量path属性中添加C:WindowsSystem32;即可满足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

  • 相关阅读:
    c# 简单的通用基础字典
    c#中设置像数量,价格,金额等的textbox的限制条件,用户只能输入数字或小数
    Introduction to Project Management(I)
    MoSCoW Method
    A Guide to Creating a Quality Project Schedule
    Estimating Project Costs
    SMART Goals
    10 Ways to Inspire Your Team
    ExtractTablesFromSQL
    iOS-传感器及使用
  • 原文地址:https://www.cnblogs.com/linqingvoe/p/10918937.html
Copyright © 2011-2022 走看看