website vernieuwd. Niet zichtbaar in Firefox

Status
Niet open voor verdere reacties.

marcel0138

Gebruiker
Lid geworden
27 mei 2008
Berichten
165
Ik heb mijn website vernieuwd maar zag de resultaten niet met mijn browser Firefox. Toevallig ontdekte ik dat met Google Chrome en Microsoft Edge wel de vernieuwde website te zien was. In firefox druk ik steeds op het ronde pijltje om te vernieuwen maar dat helpt niet. Wat moet ik doen?
 
cache legen van firefox.
 
Gaat het om de CSS-stijlen van de stylesheets?
In dat geval is het een idee om een versienummer aan het bestand vast te hangen die je bij elke update van je CSS-stylesheet verhoogt.
Bijvoorbeeld de datum of een ander getal.

Code:
<link rel="stylesheet" href="styles.css?17122020">

In dat geval wordt het CSS automatisch weer ververst zodra de bezoeker je gereviseerde site bezoekt.
 
Als je dan toch een versienummer aan aan css of js bestand hangt, dan is het misschien handiger om gebruik te maken van de filemtime functie, deze geeft de laatste wijzigingsdatum weer in een Unix timestamp.

Code:
<link rel="stylesheet" href="css/style.css?v=<?php echo filemtime($_SERVER["DOCUMENT_ROOT"].'/css/style.css'); ?>">

De $_SERVER["DOCUMENT_ROOT"] zorgt ervoor dat je overal hetzelfde kan invullen, ongeacht of je het CSS bestand vanuit de root of onderliggende map(pen) oproept.

Op het moment dat je een wijziging aanbrengt aan het style.css bestand dan zal het nieuwe bestand altijd in elke browser geladen worden en heb je dus geen cache problemen meer.
 
Zou ook nog kunnen, maar is dat niet te zwaar als je dat bij elke refresh dat direct ophaalt?
Steeds doet PHP een leesactie op het bestand.
 
Zou ook nog kunnen, maar is dat niet te zwaar als je dat bij elke refresh dat direct ophaalt?
Steeds doet PHP een leesactie op het bestand.

Elk voordeel heeft zijn nadeel zullen we maar zeggen ..... :)

Ik heb in ieder geval nog nooit gemeten dat dit een significante vertraging tijdens het laden heeft veroorzaakt maar je hebt gelijk, het zal op servernivo een request opleveren maar ik weet niet of dat dit een request vanaf de client zal zijn, ik vermoed alleen op de server.

Maar het grote voordeel is dat je nooit meer een cache probleem hebt :cool:
 
Of je moet dat ook weer cachen :p
 
Control F5 is gelukt. Blijft alleen de vraag over waarom het ronde pijltje (vernieuwen) niet werkt. Allen dank voor het meedenken.
 
Omdat dat de cache niet vernieuwd, en enkel de pagina opnieuw laadt.
 
De versie op deze manier
Code:
<link rel="stylesheet" href="css/style.css?v=<?php echo filemtime($_SERVER["DOCUMENT_ROOT"].'/css/style.css'); ?>">
vind ik wel tof, het bestand wordt niet gelezen, alleen de directory index wordt geraadpleegd. Performance verlies is praktisch nul, zeker met de SSD schijven van tegenwoordig.
 
Thanks! Maar waar heb je gevonden dat die gebruik maakt van de (interne?) directoryindex?
 
het bestand wordt niet gelezen, alleen de directory index wordt geraadpleegd
Misschien te kort door de bocht. Wat ik bedoelde is dat metadata van meerdere bestanden die in een directory staan door het File Systeem wordt geïndexeerd bij de eerste keer raadplegen van een bestand in die directory. Wat wel/niet en hoeveel bepaalt het File Systeem zelf. Ook de drive probeert mee te denken en alvast extra blokken vooruit te lezen waarvan de drive "denkt" dat je ze misschien nodig gaat hebben. Afijn, de kans is wat groter dat niet het bestand zelf geraadpleegd hoeft te worden.

Het is niet zo dat er standaard in Linux een database zit die bestanden indexeert en bijhoudt ;)
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan