php模拟post方式访问网页,显示盗用页面无法访问
发布网友
发布时间:2022-04-07 10:45
我来回答
共2个回答
热心网友
时间:2022-04-07 12:14
模拟post提交的时候,根据目标网页*的不同,需要采用不同的方法。
比如:
某些网页需要登录,这时候需要将登录的sessio(cookie)数据要一起发送;
再比如:
某些网页会检查发送来的请求来源(Referer)、浏览器的类型(User-Agent) ,如果模拟post提交时没有与要求的对应,可能就会出错。追问如果是网页检查Referer的话,在php代码里应该如何改动?
追答
看你使用的post方法,是用的curl还是其他的。
以常见的file_get_contents为例:
function file_get_contents_post($url, $post)
{
$options = array(
'http' => array(
'method' => 'POST',
'content' => http_build_query($post),
'header'=>"User-Agent: Mozilla/5.0\n"
),
);
$result = file_get_contents($url, false, stream_context_create($options));
return $result;
}
$data = file_get_contents_post("http://www.a.com/post/post.php", array('name'=>'caiknife', 'email'=>'caiknife@gmail.com'));
var_mp($data);
热心网友
时间:2022-04-07 13:32
啥地址。。。