18 votes

Comment puis-je vraiment vider le cache de Safari ?

Il y a eu d'innombrables fois où j'ai rencontré un problème après avoir édité du HTML sur un Mac. Le problème vient du fait que je télécharge le fichier mis à jour sur mon serveur par FTP et que je navigue sur le site web dans Safari. La seule chose qui n'a pas fonctionné correctement, c'est que Safari avait déjà mis en cache la page Web (l'ancienne version) et qu'il affichait donc l'ancienne version. Je me suis dit que j'allais vider le cache dans Safari en espérant que cela résoudrait mon problème. L'effacement du cache a simplement permis au site Web de se recharger. Il affichait toujours l'ancienne version du fichier. Pour prouver que le fichier sur le serveur avait bien été mis à jour, j'ai pris un autre Mac sur le même réseau, et il a affiché la nouvelle version du fichier. Peu importe le nombre de fois où j'ai actualisé, vidé le cache ou rouvert Safari, l'ancien fichier s'affichait toujours. La seule autre solution que j'ai trouvée a été de redémarrer. Après un redémarrage, Safari a rechargé l'ensemble du site Web et a affiché la nouvelle version du fichier.

Je me demande simplement comment vider le cache de Safari pour qu'il se comporte correctement. Est-ce quelque chose que le système d'exploitation fait (j'ai eu des problèmes similaires avec des fichiers sur mon disque dur) ? Je ne veux pas avoir à redémarrer tout le temps pour voir une nouvelle version d'un fichier. Existe-t-il un moyen de m'assurer que je vois la plus récente ? Existe-t-il un dossier de stockage temporaire que je peux vider manuellement ? Cela m'arrive assez souvent (pas très souvent, mais suffisamment pour que je le remarque), et ma seule solution actuelle est de redémarrer.

J'ai l'étrange sentiment (ce n'est pas vraiment une pensée, mais une très légère possibilité qui n'a pas beaucoup de sens) que cela provient d'un niveau inférieur.

0 votes

Vous utilisez chrome (ou opera) ?

0 votes

Je préférerais utiliser Firefox, mais je suis en train de développer, et je dois donc tester mon site web sur tous les navigateurs, y compris Safari.

0 votes

Il peut être utile d'utiliser le curl pour demander une URL, afin de voir ce que les il arrive avec. L'ancienne page ou la nouvelle ? Depuis curl n'a aucun concept de "mise en cache", cela vous indiquera si quelqu'un du côté distant (ou du chemin entre les deux) fait une mise en cache que vous ne voulez pas. Votre serveur pourrait être le vrai coupable ici ! Est-ce qu'il met en cache les fichiers qu'il sert ? Je parie que oui

14voto

Jeff Bloom Points 225

Dans Safari, maintenez enfoncée la touche ( Shift ) tout en cliquant sur le bouton d'actualisation. Cela permet d'effectuer un rafraîchissement "dur", sans passer par le cache local.

(Pour vider rapidement le cache dans Safari, cliquez sur + + E Allez sur Vie privée et cliquez sur "Supprimer toutes les données du site Web" .)

0 votes

Je vais certainement essayer la prochaine fois que je rencontrerai ce problème. C'est une chose que je n'ai pas encore faite. J'ai essayé de réinitialiser Safari, de vider le cache, et même de me déconnecter et de me reconnecter. Merci pour cette excellente réponse !

2 votes

Safari est un peu déroutant à cet égard, car la plupart des autres navigateurs utilisent la fonction + + R pour effectuer un rafraîchissement complet. Dans Safari, cela ne donne rien, à moins que vous n'utilisiez les outils de développement Web tout en effectuant la combinaison de touches.

0 votes

Je vais accepter votre réponse pour l'instant jusqu'à ce que quelqu'un vienne avec une meilleure explication et une solution prouvée au problème de mise en cache ignorante que je rencontre. Merci !

2voto

Suzanna Points 21

Quand Safari ne vide pas le cache :

  1. Assurez-vous que vous vous êtes déconnecté de toutes les pages Web et que vous avez fermé tous les onglets de Safari.

  2. Ouvrez le Finder et sélectionnez Go Go To Folder... dans la barre de menu. (Vous pouvez également utiliser le raccourci clavier, Command + Shift + g .)

  3. Copiez et collez ce qui suit dans le menu déroulant :

    ~/Library/Safari/Databases

  4. Supprimez tout le contenu qui apparaît dans ce dossier en mettant en surbrillance tous les dossiers, puis en faisant un clic droit et en sélectionnant Déplacer vers la corbeille.

  5. Ouvrez à nouveau Safari et vérifiez que tous les éléments sont maintenant supprimés.

  6. Si rien n'apparaît lorsque vous effectuez une recherche avec les critères ci-dessus, veuillez rechercher

    ~/Library/Safari/Local Storage

    et suivez les étapes 4 et 5 ci-dessus pour supprimer tout le contenu.

0 votes

Notez que, bien que Safari indique ci-dessus qu'il "supprimera toutes les données du site web", la vérité est qu'il s'agit en fait de n'a pas . Mais si vous purgez le contenu des différents dossiers mentionnés ici, il le fera.

1voto

James Points 11

J'ai eu exactement le même problème, sauf que j'ai remarqué que cela se produisait aussi avec d'autres navigateurs. Il s'est avéré que ce n'était pas Safari ou OSX, mais un cache créé par le fournisseur de services.

Pour résoudre le problème, j'ai mis un code dans ma page pour empêcher qu'elle soit mise en cache.

content="no-cache"

"Certaines personnes connaissent la mise en cache du navigateur, mais sont encore déconcertées par la mise en cache des FAI. La mise en cache des FAI fonctionne à peu près de la même manière que celle des navigateurs. Une fois que vous avez visité un site Web, votre FAI peut mettre ces pages en cache afin qu'elles semblent se charger plus rapidement la prochaine fois que vous les visitez. Le principal problème est que, contrairement au cache de votre navigateur, vous ne pouvez pas supprimer ces fichiers temporaires. Vous devez attendre que le cache de votre FAI expire et qu'il demande de nouvelles copies des fichiers. Cela peut être très frustrant si vous essayez de développer ou d'apporter des modifications à votre site web - ou même de consulter de nouvelles informations."

0 votes

Pouvez-vous s'il vous plaît remettre le code complet (comme vous l'aviez dans la première version de la réponse) ? Si vous mettez quatre espaces au début de la ligne, il ne devrait pas y avoir de problèmes de formatage.

0 votes

C'est un bon point, et j'essaierai la prochaine fois. Cependant, je ne suis pas sûr que cela s'appliquerait à la situation que j'ai décrite dans la question, parce que les Macs que j'ai utilisés étaient tous les deux sur le même réseau et avaient la même IP globale (donc le FAI ne serait pas capable de déterminer la différence entre les deux).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X