Para cachearlo debidamente
Código Apache:
Ver original<FilesMatch "\.(jpg|jpeg|png|html|php|js|css|xml)$">
Header set Cache-Control "public, max-age=29030400"
ExpiresDefault "access plus 1 years"
Header append Cache-Control "no-transform"
Header append Vary "User-Agent, Accept"
</FilesMatch>
el valor de max-age esta en segundos (1 año en el ejemplo)
Para no cachear determinados archivos
Código Apache:
Ver original<FilesMatch "(tarif|info)\.php$">
Header unset Cache-Control
Header unset Expires
Header unset Last-Modified
FileETag None
Header unset Pragma
</FilesMatch>
Pero no te dejes llevar en forma esctricta por el pageSpedd de google, cacheá lo que necestes y cuando lo necesites.
en mi ejemplo cacheo los php, pero después específicamente desactivo la cache para info.php y tarif.php
Tomemos el caso de tarif.php, es un php que genera una tabla de tarifas que puede ser modificada en cualquier momento por mi cliente, en ese caso evitamos la cache para que los usuarios reciban una copia fresca y actualizada siempre, evitando ver datos viejos
Saludos