304: No modificado y caché frontal

Estoy usando un script PHP para servir archivos. Me gustaría poder enviar de vuelta un304 no se modificó el encabezado en mi respuesta http si el archivo no ha cambiado desde que el cliente lo descargó por última vez. Esto parece ser una característica en Apache (y en la mayoría de los otros servidores web), pero no tengo idea de cómo se puede implementar esto a través de PHP.

He oído hablar de usar$_SERVER['HTTP_IF_MODIFIED_SINCE'], pero esta variable no parece aparecer en mi$_SERVER super array.

Mi pregunta no es cómo devolver un304 Encabezado, pero como saber que uno debe ser devuelto.

Edit: El problema es que mi$_SERVER['HTTP_IF_MODIFIED_SINCE'] no está establecido Este es el contenido de mi.htaccess expediente:

ExpiresActive On 
ExpiresByType image/jpeg "modification plus 1 month"
ExpiresByType image/png "modification plus 1 month"
ExpiresByType image/gif "modification plus 1 month"
Header append Cache-Control: "must-revalidate" 


<IfModule mod_rewrite.c>
   RewriteEngine On
   RewriteCond $1 !^(controller\.php)
   RewriteRule (.*\.jpg|.*\.png|.*\.gif) controller.php/$1
</IfModule>

HTTP_IF_MODIFIED_SINCE todavía no aparece en el$_SERVER super array.

Respuestas a la pregunta(6)

Su respuesta a la pregunta