2010-07-29 11 views
5

"páginas web son cada vez más complejo con más guiones, estilo láminas, imágenes y flash en ellos. Una visita por primera vez a una página puede requerir varias peticiones HTTP para cargar todos los componentes. Por utilizando Expira cabeceras estos componentes se convierten en cacheables, que evita HTTP innecesarias peticiones como en posteriores visitas. Expira cabeceras más a menudo se asocian con imágenes, sino que puede y debe ser utilizado en todos los componentes de la página, incluyendo scripts, hojas de estilo y Flash ".¿Cuánto tiempo sería bueno establecer en el encabezado de caducidad de un sitio web?

Según lo escrito en Yslow.

mi pregunta es ¿cuánto tiempo sería bueno establecer en el encabezado de expiración de un sitio web que tiene múltiples hojas de estilo, encabezados de Flash, JavaScript, imágenes, PDF, archivos de MS Excel, PPT, etc.?

Si quiero establecer el mismo tiempo de caducidad en todas las cosas.

Respuesta

2

Si los recursos de su página (images/css/js) normalmente no cambian y son estáticos, puede configurar el encabezado expira a algo muy lejano como 1 año.

Para las páginas sí mismos lo que realmente depende del contenido de. Si su contenido cambia con mucha frecuencia, debe asegurarse de que su encabezado caduque no sea tan grande o de lo contrario sus visitantes recibirán contenido obsoleto.

Si piensa en un sitio como SO en sí, el contenido cambia con tanta frecuencia que el encabezado caduca en la página es muy pequeño. De los encabezados, parece que usan una edad máxima de 60 segundos y tienen un encabezado caducado a 1 minuto de la actual.

+0

así que si configuro 1 año para cualquier página y la actualizo después de 6 meses, entonces el usuario no podrá ver esos cambios. incluso si usan Ctrl + F5 para actualizar la página. Estoy en lo correcto? –

+0

Correcto, si la página sigue siendo válida y los usuarios no han borrado su caché del navegador, el navegador usará el contenido en caché hasta que cumpla con los requisitos de caché del encabezado de página. –

+0

Estoy creando un sitio para el cliente y no estoy seguro de cuándo cambiará algo en el sitio. así que si no configuro el encabezado Expire en esta condición –

6

Lo que hago es establecer el tiempo de caducidad de los archivos CSS y JavaScript en un valor alto, como 1 o 5 años. Cuando cambio las hojas de estilo o los archivos JS, cambio el número de versión en sus URL, para evitar que los archivos obsoletos se sirvan desde el caché.

Parece que esto es lo que lo hace, también:

<link rel="stylesheet" href="http://sstatic.net/stackoverflow/all.css?v=e27c9b7474df"> 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 

<script src="http://sstatic.net/js/question.js?v=b05e8725a843" type="text/javascript"></script> 

Así que cuando cambian la hoja de estilo, cambian all.css?v=e27c9b7474df-all.css?v=some new version. El archivo javascript question.js sigue la misma convención. Pero los nombres de archivos también funcionarían, podría llamar a sus archivos CSS/JS all-1.css, luego cambiarlos a all-2.css, etc. El formato real del número de versión depende de usted siempre que cambie la URL.

Cuestiones relacionadas