首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP cURL说,当POSTing迁移到虚拟主机时,会永久迁移

PHP cURL说,当POSTing迁移到虚拟主机时,会永久迁移
EN

Stack Overflow用户
提问于 2014-03-10 17:52:12
回答 2查看 22.3K关注 0票数 8

我正在尝试使用PHP cURL将一些数据发布到一个本地站点,该站点使用虚拟主机来拥有自定义域http://example.local,但结果似乎是一个Moved Permanently。我怎么才能让它工作呢?

这是我当前的代码:

代码语言:javascript
复制
$url = "http://example.local/paypal_ipn.php"
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);

curl_setopt($ch,CURLOPT_POST, substr_count($req,'&')+1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $req);

//execute post
$result = curl_exec($ch);

//close connection
curl_close($ch);

我尝试将CURLOPT_FOLLOWLOCATION设置为true,但没有POST数据。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-10 18:28:26

使用CURLOPT_CUSTOMREQUEST代替CURLOPT_POST like;

代码语言:javascript
复制
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");

还有一件事,你需要添加

代码语言:javascript
复制
curl_setopt($curl, CURLOPT_POSTREDIR, 3);

3表示follow redirect with the same type of request both for 301 and 302 redirects.

通过这样做,第二个请求也将作为POST请求。请注意,在PHP5.3.2 here中实现的CURLOPT_POSTREDIR

票数 12
EN

Stack Overflow用户

发布于 2014-03-10 18:37:27

试试看

代码语言:javascript
复制
//** add options **//

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($curl, CURLOPT_POSTFIELDS, "your_var");
curl_setopt($curl, CURLOPT_POSTREDIR, 3);

curl_exec($curl);
票数 31
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22296828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档