我有一个网站,我尝试登录,设置cookie并保存到文件,但在我将postfiend发送到登录页面后,网站将我重定向到一个页面,告诉我没有启用cookie。
$post = "Username=".$user."&password=".$pswd."&loginButton=1";
$options = array(
CURLOPT_USERAGENT => 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)',
CURLOPT_POST => true, //using post
CURLOPT_URL => $address, //where to go
CURLOPT_POSTFIELDS => $post, //input params
CURLOPT_RETURNTRANSFER => true, //Returns a string value of the request
CURLOPT_SSL_VERIFYPEER => false, //Avoid SSL problems
CURLOPT_HEADER => 1,
CURLOPT_FAILONERROR => true,
//CURLOPT_FOLLOWLOCATION => true,
CURLOPT_COOKIEJAR => 'cookies.txt',
CURLOPT_COOKIEFILE => 'cookie.txt', //Save cookies
CURLOPT_COOKIESESSION => true,
); //Cookies located
$ch = curl_init(); //Initialize curl in $ch
curl_setopt_array($ch, $options); //add params values to $ch
$content = curl_exec($ch); //execute
echo $content;
答案 0 :(得分:1)
通常会发生这种情况,因为网站会在上一页上设置所需的Cookie,例如显示登录表单的页面。
检测此问题的一种方法是刷新浏览器Cookie并使用浏览器浏览网站,并调查第一次从服务器发送Cookie的确切时间。