我正在从exampleA.com
发出cURL请求以获取其响应标头。到目前为止,这些都是我得到的一些数据:
Array
(
[0] => sess=1; path=/; expires=Wed, 15-May-2013 09:25:29 GMT; domain=.exampleA.com; HttpOnly
[1] => .........
)
现在这对我来说很难,我想将Cookie设置为我自己的域exampleB.com
,就像我从exampleA.com
获取它一样。
使用Firebug这是exampleA.com
中的响应标头:
Set-Cookie:uuid2=4511997856767122744; path=/; expires=Mon, 12-Aug-2013 09:21:38 GMT; domain=.exampleA.com; HttpOnly
所以我需要将cookie设置为相同的值,但是在exampleB.com
的域下。我该怎么做?
答案 0 :(得分:4)
$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
preg_match('/Set-Cookie:[^\r\n]+/', $response, $match); // extract cookie header
$cookie_header = preg_replace('/domain=[^;\r\n]+/', 'domain=.mydomain.com', $match[0]); // replace old domain with your domain
//echo $cookie_header;
header($cookie_header); // set cookie header