304 Problema não modificado

Desculpe pelo título provavelmente errado. Estou escrevendo algum código para manipular solicitações If-Modified-Since e If-None-Match como parte do cache. Tudo funciona perfeitamente, exceto que o PHP retorna algum conteúdo (uma linha vazia) após os cabeçalhos. O conteúdo da página deve estar vazio. O código que estou usando é:

<?php
$lastmod = filemtime($f);
$etag = '"'.dechex($lastmod).'"';
if ($_SERVER['HTTP_IF_MODIFIED_SINCE'] == $last_mod || $_SERVER['HTTP_IF_NONE_MATCH'] == $etag) {
  header('HTTP/1.1 304 Not Modified');
  header('Content-Length: 0');
  exit();
}
?>

questionAnswers(3)

yourAnswerToTheQuestion