Caché para imágenes, php, js y html

Quiero guardar en caché todos mis archivos, pero no puedo encontrar la manera de hacerlo funcionar para que las pruebas lo aprueben. Tengo actualmente

   

La última línea que agregué solo para probar si ha expirado y max-age me ayudará (no es así)

Estaba usando http://www.webpagetest.org/ , https://developers.google.com/pagespeed/# , y http://gtmetrix.com/

¿alguien me puede decir simplemente cómo asegurarse de que todo se almacena en caché de forma privada? He revisado muchas otras páginas, pero nadie da código HTML legítimo. Por favor, enumere el código real, no me diga simplemente que use Cache-Control y caduque, y eso como todos los demás sitios que he visto. Realmente necesito un código de ejemplo para entender. Gracias por cualquier ayuda por adelantado. También estoy usando PHP, así que si lo hace en un encabezado (), entonces eso también funcionaría.

Muchas gracias

editar: También intenté usar .htaccess para hacerlo pero eso no funcionó. No sé si fue una configuración con mi servidor o qué, pero no cambió nada con la prueba.

Cuando especifica un tiempo de caducidad en un documento HTML, solo se aplica al documento real.

Suponiendo que tiene un servidor web Apache con mod_expires habilitado, puede crear un archivo llamado .htaccess e incluir lo siguiente

 ExpiresActive On ExpiresByType image/gif 86400000 ExpiresByType image/png 86400000 ExpiresByType image/jpg 86400000 ExpiresByType image/jpeg 86400000 ExpiresByType text/html 86400000 ExpiresByType text/javascript 86400000 ExpiresByType text/plain 86400000 

puede usar .htaccess para almacenar en caché sus archivos.

  #cache html and htm files for one day  Header set Cache-Control "max-age=43200"  #cache css, javascript and text files for one week  Header set Cache-Control "max-age=604800"  #cache flash and images for one month  Header set Cache-Control "max-age=2592000"  #disable cache for script files  Header unset Cache-Control