Hay más de una forma de hacerlo, pero debe considerar exactamente lo que necesita almacenar en la memoria caché y lo que no. Los mayores incrementos de velocidad probablemente vendrán de asegurarse de que sus activos (css, images, javascript) estén almacenados en caché, en lugar del propio html. Luego debe considerar varios factores (¿con qué frecuencia cambian estos activos, cómo forzará a un usuario a descargar una nueva versión del archivo si la cambia?).
A menudo, como parte de un proceso de publicación de sitios, a los archivos nuevos (archivos actualizados) se les asigna un nuevo nombre de archivo para obligarlos a volver a descargar el archivo, pero este es solo un enfoque.
Debe echar un vistazo a apache mod_expire, y la capacidad de establecer tiempos de caducidad para los activos utilizando el archivo .htaccess.
http://www.google.com/?q=apache+cache+control+htaccess#q=apache+cache+control+htaccess
¿Utiliza wordpress? drupal? ¿tienes una base de datos? el almacenamiento en caché no es tan cortante y seco como parece pensar que es ... – Trey
Lo siento. Estoy usando un sitio web simple de PHP sin un CMS. – Uli