php设置http请求头信息和响应头信息

设置请求服务器的头信息可以用fsockopen,curl组件,header函数只能用来设置客户端响应的头信息,不能设置服务器的头信息.

例子;

一.header函数的用法

header('WWW-Authenticate: Negotiate');

header('User-Agent:Mozilla/5.0);

多个直接要写多个header,不可以连接在一起

二.fsockopen函数的用法

1.php

<?php
$fp = fsockopen("test.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET /2.php HTTP/1.1\r\n";
    $out .= "Host: test.com\r\n";

$out .= "name:longqiqi\r\n";
    $out .= "Connection: Close\r\n\r\n";

fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
?>

2.php

print_r(getallheaders());

会返回自己设置请求的头信息

三.curl组件的使用

1.php

<?php

function FormatHeader($url, $myIp = null,$xml = null)

{

// 解悉url

$temp = parse_url($url);

$query = isset($temp['query']) ? $temp['query'] : '';

$path = isset($temp['path']) ? $temp['path'] : '/';

$header = array (

"POST {$path}?{$query} HTTP/1.1",

"Host: {$temp['host']}",

"Content-Type: text/xml; charset=utf-8",

'Accept: */*',

"Referer: http://{$temp['host']}/",

'User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1)',

"X-Forwarded-For: {$myIp}",

"Content-length: 380",

"Connection: Close"

);

return $header;

}

$interface = 'http://test.com/2.php';

$header = FormatHeader($interface,'10.1.11.1');

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $interface);

curl_setopt($ch, CURLOPT_HTTPHEADER, $header);  //设置头信息的地方

curl_setopt($ch, CURLOPT_HEADER, 0);    //不取得返回头信息

curl_setopt($ch, CURLOPT_TIMEOUT, 5);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);

var_dump($result);

?>

2.php

print_r(getallheaders());

会返回自己设置请求的头信息

#Php

转载于:https://www.cnblogs.com/yisuo/p/9246998.html

php设置http请求头信息和响应头信息相关推荐

  1. HTPP常用请求头、HTTP响应头、HTTP content-type

    文章目录 请求头 响应头 HTTP content-type 请求头 协议头 说明 Accept 可接受的响应内容类型(Content-Types) Accept-Charset 可接受的字符集 Ac ...

  2. Python 爬虫 Request(请求头)和Response(响应头)的 内容详解 【爬虫资料二】

    Resquest请求头[以访问知乎]为例(使用Fiddler抓的包) 请求行包含的信息: 请求的方法(POST)  #其他的方法还有GET.HEAD.PUT.DELETE.OPTIONS.TRACE ...

  3. HTML做frame跳转设置响应头,X-Frame-Options header响应头如何配置

    摘要: X-Frame-Options:值有三个(1)DENY:表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许.(2)SAMEORIGIN:表示该页面可以在相... X- ...

  4. http状态码 以及请求响应头相关

    1xx消息[编辑] 这一类型的状态码,代表请求已被接受,需要继续处理.这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束.由于HTTP/1.0协议中没有定义任何1xx状态码,所以除非 ...

  5. Request Headers 和Response Headers——请求头和响应头

    前沿 作为一个前端开发工程师看不懂每条请求的请求头和响应头,实在是一件很难受的事情.最近花了一些时间整理了一篇文档,一起来看看前后端交互时每个资源的信息. 谷歌浏览器调试工具--查看请求资源的信息数据 ...

  6. iOS开发之HTTP的请求头和响应头 以及常见的响应状态码

    *************请求头************** 请求头:包含了对客户端的环境描述.客户端请求信息等 GET /minion.png HTTP/1.1   //包含了请求方法.请求资源路径 ...

  7. IRIS框架ctx.header响应头设置不成功问题

    IRIS框架ctx.header响应头设置 Go的iris框架在使用中感觉是功能非常强大的框架,功能很完善,且可以通过框架的api灵活的处理客户端发送的请求以及返回信息. 在一个项目中需要对返回客户端 ...

  8. HTTP请求头和响应头

    请求头 Accept:浏览器可接受的MIME类型. 就是希望服务器返回什么类型的数据,比如application/json,text/html,image/png,*/* Accept:applica ...

  9. Http请求头和响应头(Get和Post)

    文章目录 一.HTTP简介 二.HTTP消息结构 [请求报文] (一)请求行 (1)请求方法 (2)请求头 (3)空行 (4)请求数据(post) 实例 (post) 三.HTTP响应消息 (一)状态 ...

最新文章

  1. 写接口给别人调用 推送数据到我们_我们写了一个超好用的抖音矩阵数据管理工具...
  2. Taro+react开发(45)taro中组件生命周期
  3. 话里话外:家族化管理模式和职业化管理模式孰优孰劣
  4. 第46课 精益求精 《小学生C++趣味编程》
  5. 漫画家Neal Adams推出以蝙蝠侠等超级英雄为主题的NFT
  6. printk与日志优先级设置
  7. js实现全国省份下拉
  8. 开挂?16岁保送北大、MIT量子计算机博士是这样玩转区块链的!
  9. 小白也能懂的DPDK技术解析
  10. win10 电脑自带的便签在哪里
  11. 为什么程序员喜欢在半夜写代码?
  12. java newline_“\ n”和Environment.NewLine之间的区别
  13. 300套PPT模板+实习僧20套精选简历+其他各种素材PPT模板(免费分享)
  14. 科罗拉多州奥罗拉市用基于磁盘的ExaGrid系统取代磁带备份
  15. 验证input和textarea的输入是否有效,也就是不为空,也不都是空格
  16. Mysql数据库的字段类型
  17. icloud安装错误怎么办_怎么办?iCloud云备份失败该如何解决?
  18. 女人啊!你的名字叫坚强
  19. Linux Oracle Rac 10G 搭建 Patch
  20. 如何写打动人的「个人简历」

热门文章

  1. HDU 1358 Period KMP
  2. Google Chrome 调试JS简单教程[更新]
  3. 乔布斯不在了,世界一大步,苹果一小步。
  4. netfilter与用户空间通信
  5. Vue打包发布项目---vue工作笔记0020
  6. 大数据之-Hadoop伪分布式_配置历史服务器---大数据之hadoop工作笔记0027
  7. Netty工作笔记0054---EventLoop组件
  8. springcloud工作笔记095---springcloud项目后端验证_hibernate validator后端校验字段_自己实现_快速开发
  9. 疫苗:Java HashMap的死循环(转)
  10. kafka删除topic及其相关数据