J'utilise Apache HTTPD 2.2 sous Windows. mod_expires est commenté. La plupart des autres éléments ne sont pas modifiés par rapport aux valeurs par défaut. gzip est activé.
J'ai apporté des modifications à mes fichiers .js
. Mon client reçoit une réponse 304 pour l'un des fichiers .js
et ne reçoit jamais le reste. Comment puis-je forcer Apache à tout vider et à envoyer tous les nouveaux fichiers au client?
Le fichier html principal inclut ces scripts dans la section head de la page principale:
<script src="js/jquery-1.7.1.min.js" type="text/javascript"> </script>
<script src="js/jquery-ui-1.8.17.custom.min.js" type="text/javascript"></script>
<script src="js/trex.utils.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.core.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.codes.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.emv.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.b24xtokens.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.iso.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.span2.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.amex.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.abi.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.barclays.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.bnet.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.visa.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.atm.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.apacs.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.pstm.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.stm.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.thales.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.fps-saf.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.fps-iso.js" type="text/javascript" charset="utf-8"></script>
<script src="js/trex.app.js" type="text/javascript" charset="utf-8"></script>
Le journal d'accès Apache contient les éléments suivants:
[07/Jul/2013:16:50:40 +0300] "GET /trex/index.html HTTP/1.1" 200 2033 "-"
[07/Jul/2013:16:50:40 +0300] "GET /trex/js/trex.fps-iso.js HTTP/1.1" 304
[08/Jul/2013:07:54:35 +0300] "GET /trex/index.html HTTP/1.1" 304 - "-"
[08/Jul/2013:07:54:35 +0300] "GET /trex/js/trex.iso.js HTTP/1.1" 200 12417
[08/Jul/2013:07:54:35 +0300] "GET /trex/js/trex.amex.js HTTP/1.1" 200 6683
[08/Jul/2013:07:54:35 +0300] "GET /trex/js/trex.fps-saf.js HTTP/1.1" 200 2925
[08/Jul/2013:07:54:35 +0300] "GET /trex/js/trex.fps-iso.js HTTP/1.1" 304
Les en-têtes de demande Chrome sont les suivants:
Ce fichier est ok, le dernier:
Request URL:http://localhost/trex/js/trex.iso.js
Request Method:GET
Status Code:200 OK (from cache)
Ce fichier est ok, le dernier:
Request URL:http://localhost/trex/js/trex.amex.js
Request Method:GET
Status Code:200 OK (from cache)
Celui-ci est aussi ok:
Request URL:http://localhost/trex/js/trex.fps-iso.js
Request Method:GET
Status Code:200 OK (from cache)
Les autres scripts ont tous 200 OK (à partir du cache).
J'ai activé le expires_module
et tout semble fonctionner maintenant.