是否可以仅发送http请求以获取上次修改时间?

时间:2009-11-27 04:14:37

标签: php http request

而不是文件本身?

修改

最好用PHP演示吗?

5 个答案:

答案 0 :(得分:4)

是。 “HEAD”方法仅返回响应头而不返回实际数据。

答案 1 :(得分:2)

你可以使用php的get_headers函数

$a = get_headers('http://sstatic.net/so/img/logo.png');
print_r($a);

答案 2 :(得分:1)

在您的HTTP请求中,您应添加these header attributes,中的任何一个,并且您可能会收到304(上次修改)

  1. 如果-Modified-Since的
  2. 如果-无 - 匹配
  3. 如果未改性的-由于
  4. Andrei是正确的,HEAD只会获得标题。如果符合条件,我的建议将只返回标题而不返回正文。如果内容已更新,正文将包含新信息。

答案 3 :(得分:1)

<?php
// Get Headers
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,            'http://example.com/'); 
curl_setopt($ch, CURLOPT_HEADER,         true); 
curl_setopt($ch, CURLOPT_NOBODY,         true); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_TIMEOUT,        10); 
$response = curl_exec($ch); 

// Process Headers
$headerLines = explode("\r\n", $response);
foreach ($headerLines as $headerLine) {
    $headerLineParts = explode(': ', $headerLine);
    if (count($headerLineParts) >= 2) {
        $headers[$headerLineParts[0]] = $headerLineParts[1];
    }
}

echo $headers['Last-Modified'];
?>

答案 4 :(得分:0)

您需要编写一些服务来处理http请求并提取所请求文件的最后修改日期并返回日期作为响应。