Così lo fa apparire possibile .... la sintassi del file .htaccess è:
Header unset Last-Modified
FileETag none
ExpiresActive On
ExpiresDefault "access plus 1 years"
Questo si spegnerà Etags e accendere Cache-Control: max-age
Poi mettere questo. file .htaccess nella directory e tutti i file (tra cui è sub-directory verranno memorizzati nella cache per 1 anno.
ho deciso di mettere tutto il mio contenuto della cache-grado sotto una directory principale singolo e modificare il httpd.conf
come
<Directory "C:\somedir\cache">
Header unset Last-Modified
FileETag none
ExpiresActive On
ExpiresDefault "access plus 1 years"
</Directory>
Sono ancora in fase di test. Spero solo che questo non spenga Etags per il resto del sito. Finora sembra che funzioni come previsto.
UPDATE (dopo 6 mesi):
Impostazione della ExpiresDefault e permettendo di e-tag è la cosa migliore da fare.
in httpd.conf:
<Directory "C:\somedir\cache">
ExpiresActive On
ExpiresDefault "access plus 1 year"
</Directory>
Assicurarsi che "somedir" è all'interno della radice apache (come htdocs).
Consentire l'e-tag è un bene perché dopo 1 anno, il browser convaliderà nuovamente il file passando l'e-tag. Il server Web invierà un 304 - Non modificato e reimposterà l'età massima a 1 anno. Questo è molto efficiente.
Tutto sommato, è possibile guardare il file di log di apache e vedere che gli elementi in/cache dir vengono iniziati una volta.
Nota: ho trovato che l'impostazione Header append Cache-Control "public"
è ok, se lo si desidera.
Versione finale:
Ecco la versione finale: (basta aggiungere questo al fondo della httd.conf)
<Directory "C:\somedir\cache"">
ExpiresActive On
ExpiresDefault "access plus 1 year"
Header append Cache-Control "public"
</Directory>
Ispezione dell'intestazione dovrebbe rivelare questo:
Accept-Ranges:bytes
Cache-Control:max-age=31536000, public
Connection:Keep-Alive
Content-Language:en
Content-Length:746
Content-Type:text/css
Date:Thu, 29 May 2014 15:23:50 GMT
ETag:"240000000add63-2ea-4f4086d72ad01"
Expires:Fri, 29 May 2015 15:23:50 GMT
Keep-Alive:timeout=40, max=200
Last-Modified:Fri, 07 Mar 2014 18:28:59 GMT
Ciò:
- Impostare il max-age per 1 anno (il più lungo consigliato)
- Inviare il scade il tag di 1 anno
- Invia un Etag, quindi dopo 1 anno il browser eseguirà la validazione di ETAG
- Consentire ai dispositivi/servizi di memorizzazione nella cache di essere in grado di memorizzare il file per 1 anno.