PHP CURL header 设置HOST主机头进行访问并 POST提交數據

$host = array("Host: act.qzone.qq.com");// 域名不帶http://
$data = array(
            ‘aa‘ => ‘xx‘,
            ‘bb‘=>‘xx‘
        );     
$url = ‘http://127.0.0.1/xxx/xxx/api/‘;
var_dump( $this->curl_post($host, $data,$url) );

function curl_post($host,$data,$url)
{
   $ch = curl_init();
   $res= curl_setopt ($ch, CURLOPT_URL,$url);
   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
   curl_setopt ($ch, CURLOPT_HEADER, 0);
   curl_setopt($ch, CURLOPT_POST, 1);
   curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
   curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($ch,CURLOPT_HTTPHEADER,$host);
   $handles = curl_exec($ch);
   curl_close($ch);
   return $handles;
}
function postData($url, $post)
{
    $ch = curl_init();
    $timeout = 300;
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $handles = curl_exec($ch);
    curl_close($ch);
    return $handles;
}

时间: 2024-11-09 22:17:12

PHP CURL header 设置HOST主机头进行访问并 POST提交數據的相关文章

【转】PHP curl CURLOPT_HTTPHEADER设置HOST

为了安全,我们的web服务主机往往不能上网.维护的时候,也是通过跳板机,ssh登录后去操作. 有时候我们的程序需要访问外网.比如需要调用外网其他程序的某个接口.这下该怎么办呢? 我们可以通过PHP的CURL函数的CURLOPT_HTTPHEADER来配置设置host访问. 在开发中,我遇到这样一个例子. 有一个活动程序,需要调用qzone那边的一个接口. 如下代码示例: $host = array("Host: act.qzone.qq.com"); $data = 'user=xxx

php curl如何设置自定义请求头和打印请求头信息

$header = [ 'client:h5', 'token:test', ]; curlRequest($url, $params, true, 10, $header); PHP 5.1.3版以上支持用curl_getinfo函数来获取请求头具体需要先设置 curl_setopt($ch, CURLINFO_HEADER_OUT, true);然后在请求发生后用 curl_getinfo($ch, CURLINFO_HEADER_OUT); function curlRequest($ur

PHP header函数设置http报文头示例详解

//定义编码 header( 'Content-Type:text/html;charset=utf-8 '); //Atom header('Content-type: application/atom+xml'); //CSS header('Content-type: text/css'); //Javascript header('Content-type: text/javascript'); //JPEG Image header('Content-type: image/jpeg'

[转]php curl 设置host curl_setopt CURLOPT_HTTPHEADER 指定host

From : http://digdeeply.org/archives/10132139.html 我们在开发测试时,有时web服务器会绑定一个域名,但是因为dns是无法解析的,我们需要设置host文件去访问.但是,如果我们是需要通过curl访问的话,无法访问该url的host主机.所以,需要通过指定host的方式来访问,具体访问方式如下:如果是linux下的curl命令: Example 1 curl --silent -H "Host: www.digdeeply.info" &

cURL常见设置项的简单介绍

cURL设置项 cURL的设置项通过curl_setopt函数设置,原型如下:       boolcurl_setopt(resource $ch,int $option,mixed $value); 常用的设置项介绍如下: 1. CURLOPT_REFERER:       当根据Location:重定向时,自动设置header中的Referer信息 2. CURLOPT_COOKIESESSION: 启用时会仅仅传递一个session cookie,忽略其他cookie,默认情况下cURL

关于wamp5中(apache)设置虚拟主机

找了很多文章,但是很多对于最新的apache都已经过时无法生效了. http://blog.csdn.net/yuluo727282752/article/details/6944359 这篇文章写得非常好,记录下来,下面为全文引用. 完成一个项目,总要进行一些测试,但是在自己本上测试或许有一些自己想不到的BUG出现,于是配置一个虚拟主机可以为自己更方便的解决BUG,也可以方便演示时大家测试 以下是我在网上寻到的一些方法,分享给大家 开发环境:WAMP 实例一,Apaceh配置localhost

js 中ajax请求时设置 http请求头中的x-requestd-with= ajax

今天发现 AngularJS 框架的$http服务提供的$http.get() /$http.post()的ajax请求中没有带 x-requested-with字段. 这样的话,后端的php 就无法判断 接受的http请求是否是 ajax请求了. 怎么办呢,显然就是给http 请求头中 加上这个字段就可以了. 1.AngularJS 中可以这样子: I don't know well MVC3 but you can set a custom header for all request fr

ASP.NET Core技术研究-探秘Host主机启动过程

原文:ASP.NET Core技术研究-探秘Host主机启动过程 当我们将原有ASP.NET 应用程序升级迁移到ASP.NET Core之后,我们发现代码工程中多了两个类Program类和Startup类. 接下来我们详细探秘一下通用主机Host的启动过程. 一.Program类的Main函数入口 Program类最重要的功能就是启动主机,这里有一个主机的概念,是ASP.NET Core全新引入的. 主机负责应用程序启动和生存期管理. 同时,主机也是封装应用程序资源的对象: 依赖注入 (DI)

VMware vSphere 6 设置ESXI主机IP

VMware vSphere 6  设置ESXI主机IP 一.配置ESXI 主机的管理IP 1.按"F2 "进入系统设置,如果网络里面有DHCP,可以在vSphere Client 客户端中直接登录,去设置.如果没有DHCP 只能在控制台通过键盘设置. 下面是一些操作功能键的说明 2.输入密码通过验证,按"Enter". 3.再次按"F2",进入配置选项 4.用光标键,选择"Configure Management Net work&q