HEAD方法在99%的web服务中支持(不完全统计,默认都是HEAD、POST、GET,除了某些极其特殊的应用会限制HEAD方法),HEAD方法有很多用途,比如探测网页的状态(HTTP头部信息,404,403,200)。PHP的灵活性,可以很容易地实现HTTP的HEAD方法。
1、Socket实现:
(直接手写HEAD请求)
2、CURL实现:
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'HEAD'); // HTTP request is 'HEAD'
OR
curl_setopt($ch, CURLOPT_NOBODY, true);
3、get_header()
stream_context_set_default(array('http'=>array('method'=>'HEAD')));
print_r(get_headers('http://www.baidu.com'),0);
经测试,默认情况下 get_headers()发送的请求不是HEAD而是GET,所以最好加上一个全局的HTTP方法配置。但是如果下文中有要使用远程GET或者POST方法的,最好别使用此种方法。
4、HTTP模块中的http_head()方法