Edge refresh niet.

Status
Niet open voor verdere reacties.

weswillem

Gebruiker
Lid geworden
8 nov 2011
Berichten
310
Bij een aanpassing in de css file, refresh ik Edge. Daarna gebeurt niets, geen verandering. Bij het opnieuw opstarten van de laptop en opnieuw de site tonen is het wel aangepast.
Waaraan kan dit liggen?
 
Doe je wel een harde refresh met CTRL+F5?
 
Laatst bewerkt:
Yep, icoontje in werkbalk, en CTRL+ Fn + F5 alsmede CTRL + R doet ook niets
edit:
Werk met wampserver in de localhost
 
Laatst bewerkt:
En in andere browsers?
Is het misschien niet zo dat je iets van een cache op de server draait, zodat deze na een paar minuten invalideert?
Of misschien iets in .htaccess?
 
Laatst bewerkt:
Voor de zekerheid kan je de "browsergegevens wissen" in je browser.
(cookies en geschiedenis niet aanvinken, de rest wel aanvinken)

Wijzigingen in de css stylesheet opslaan, en dan in de browser Ctrl+F5 zou voldoende moeten zijn.
 
Laatst bewerkt:
Heb nu Chrome geïnstalleerd, daar werkt het wel bij verandering van css stylesheet.
@Bron
Morgen even uw opmerking uitproberen. Thanx
 
Misschien handiger om de style sheets (en b.v. javascripts als deze ook vaak aangepast wordt) op de ondestaande manier te laden:

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

Dan komt er uiteindelijk b.v. te staan:

Code:
<link rel="stylesheet" href="css/style.css?v=1621417302">

Hierbij is 1621417302 de timestamp van het bestand style.css en wijzigt dus elke keer als het bestand opgeslagen wordt.

Dit zorgt ervoor dat altijd de laatst versie geladen wordt en je dus geen cache problemen hebt.

Misschien overbodig om te zeggen maar dit werkt naturrlijk alleen bij een php bestand en niet bij een html bestand omdat de php functie filemtime aangeroepen wordt. :d
 
Code:
<link rel="stylesheet" href="css/style.css?v=<?php echo filemtime('/css/style.css'); ?>">
Dit is een goede oplossing.
De browser weet dan, als de waarde ?v= anders is, dat de cache niet mag worden gebruikt.

Met time() kan het nog iets korter want time() geeft elke seconde een uniek getal sinds 01/01/1970.
Code:
<link href="css/style.css?v=<?= time() ?>" rel="stylesheet">


Of met Javascript in de <head> sectie, maar dat is omslachtig en kan je beter niet gebruiken.
Direct onder dit stukje Javascript komt dan de <link ....> te staan.
Code:
<script id="styleScript">
let styleScript = document.getElementById("styleScript");
let link = document.createElement("link");
link.rel = "stylesheet";
link.href = "css/style.css?v=" + Number(new Date());
styleScript.parentNode.insertBefore(link, styleScript.nextSibling);
</script>
<!-- hier komt de <link> te staan -->


Opmerking.
In een live omgeving zal de performance verbeteren als je de ?v=...... weghaalt.
 
Laatst bewerkt:
Dit is een goede oplossing.
De browser weet dan, als de waarde ?v= anders is, dat de cache niet mag worden gebruikt.

Met time() kan het nog iets korter want time() geeft elke seconde een uniek getal sinds 01/01/1970.
Code:
<link href="css/style.css?v=<?= time() ?>" rel="stylesheet">
Dan doe je de caching dus teniet, omdat je elke keer een unieke bestandsnaam ophaalt.
filemtime() pakt de timestamp van de modified date van het bestand.
 
Dan doe je de caching dus teniet, omdat je elke keer een unieke bestandsnaam ophaalt.
filemtime() pakt de timestamp van de modified date van het bestand.
Helemaal met je eens, daarom alleen tijdens development en niet in live omgeving :thumb:

Als het in de live omgeving wordt gebruikt, dan kan het wel met een vaste waarde, bijv. style.css?v=18jan2022
Bij sommige WordPress websites wordt ver= weggelaten, daar staat gewoon style.css?123456789
Browsers hebben hier blijkbaar geen moeite mee.
 
Laatst bewerkt:
Hoop info ter lering. Inmiddels werkt edge weer in de localhost omgeving nadat de browser geschiedenis is gewist.
Op naar de volgende oplossing van een probleem.
Bedankt allen voor de respons.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan