【发布时间】:2019-06-21 18:43:52
【问题描述】:
我使用 CURL 和 PHP 来镜像远程网站,它工作正常,但是当我尝试使用参数发出 POST 请求时,在 CURL 收到来自远程服务器的带有新“Location:”标头的回复后,它不会发送到用户浏览器(我只在卷曲标题中看到它)。
我需要在 POST 查询到远程站点后将用户重定向到新位置。此位置由远程服务器的标头回复收到,但未提供给最终用户浏览器。
请帮助我找到解决方案。我检查了很多搜索引擎结果,但没有运气。我只找到一些命令行 curl 的建议,而不是 PHP。
谢谢!
curl_setopt_array($curl,$x=array(
//CURLOPT_HEADER=>1,
CURLINFO_HEADER_OUT=>1,
CURLOPT_RETURNTRANSFER=>1,
CURLOPT_FOLLOWLOCATION=>true,
CURLOPT_MAXREDIRS=>7,
CURLOPT_AUTOREFERER=>true,
CURLOPT_PROXY=>$proxy,
CURLOPT_PROXYTYPE=>7,
//CURLOPT_COOKIESESSION=>false,
CURLOPT_COOKIEFILE=>$_SESSION['cookie_4'],
CURLOPT_COOKIEJAR=>$_SESSION['cookie_4'],
CURLOPT_REFERER=>$referer,
CURLOPT_ENCODING=>"gzip",
CURLOPT_HTTPHEADER=>array(
"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language: en-US,en;q=0.5",
"Accept-Encoding: gzip, deflate",
"Cache-Control: no-cache",
"Connection: keep-alive",
"Pragma: no-cache",
"Upgrade-Insecure-Requests: 1",
),
CURLOPT_USERAGENT=>/*isset($_SERVER['HTTP_USER_AGENT']) ? (string)$_SERVER['HTTP_USER_AGENT'] : */'Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0',
));
【问题讨论】:
标签: php curl redirect post location