Hogyan frissíthetem automatikusan az oldalt ?
Hobbi szinten készülő weboldalnál van egy olyan problémám, hogy ha változtatok az oldalon és megnézem, hogy hogyan is néz ki valójában, akkor nem frissül az oldal. Állandóan a "körbenyillal" rá kell frissítenem.
Azt nem tudom, hogy a külső látogatóknál is ugyanígy van e ?
Igazából nem is értem, hogy a weboldalon történt változtatások miért nem jelennek meg azonnal, ha betöltődik az oldal?
Valami tárolt változatot jelenít meg ilyen esetben ?
Igen, valószínűleg a böngésződ gyorsítótárában maradnak azok az elemek. Ez alapvetően jó dolog, mert statikus tartalmat teljesen feleslegesen töltene le minden egyes gombnyomás után.
Kezdő szinten azt javaslom, hogy:
a) maradj az F5-nél. <- "körbenyil"
b) módosítsd ideiglenesen a webszerver beállításait (pontos tippet nem tudok mondani, míg nem tudom hogy nginx vagy apache) de a lényeg, hogy az adott oldal küldjön üzenetet a böngészőnek, hogy ne cache-eljen. Hosszú távon ne hagyd így, főleg az éles oldalt, de míg hibát keresel addig kényelmesebb lehet.
c) tegyél fel valami plugint, ami automatikusan frissíti az oldalt.
d) ha csak a css/js fájlok esetén jelentkezik a probléma, akkor a fájlnév mögé rakj egy random számot. pl main_style.css?4567385 ugyan úgy be fog tölteni, de ha változtatsz a fájl tartalmán, akkor írd át a számot is és a következő kattintásnál újra letölti a böngésző
Komolyabb oldalak esetén is így csináljuk, csak nyilván nem kézzel hanem a webpack beállításait úgy adjuk meg, hogyha frissül valamelyik tartalom és újragenerálja, akkor az url-t módosítja. De ezzel nem akarlak belekavarni, a lényeg, hogy ez a "profibb" megoldás.
#2 valóban. (olyan régen volt már erre szükségem, hogy szerintem akkor még ez nem is volt benne, azóta pedig nem is kerestem. ez nekem is új, de jogos.. :))
#1-es voltam.
Dolgozz dinamikusan, használj fejlesztői módot!
Készíts szerver oldalon egy függvényt, ami visszaadja az útvonalat egy verziószámmal a végén.
A verzió szám a fájl utolsó módosításának timestamp értéke legyen, így csak akkor tölti le újra a böngésző ha a fájl ténylegesen módosult.
Ha végeztél a fejlesztéssel, akkor a függvényben leveheted a verzió számot, de még jobb ha a fejlesztői módot konfigurációhoz kötöd.
"Ha végeztél a fejlesztéssel, akkor a függvényben leveheted a verzió számot"
Én azt javaslom, hogy ne vegye le. Maradhat prod env-ben is. :) Ha a felhasználóknál is cache-be került a css/js és nem nyom rá a frissítésre külön, akkor elég érdekes dolgokat eredményezhet. Tapasztalat.
Nem zavar az senkit, viszont ha frissül, akkor a felhasználóknál is.
Elgondolkodtam ezen a böngésző gyorsító táron.
Ez a memóriában tárol, vagy a merevlemezen ?
Mert ha a memória, akkor elvileg minden gép bekapcsoláskor az már törölt állapotban van, azaz az új, már módosított weboldal töltődik be ilyenkor.
Az nem zavarna, hogy a fejlesztés időszakában nekem újra kell frissítenem, csak az éles változatot ne kelljen a nézelődőnek frissítenie egyik napról a másikra.
Napközben úgysem változik a tartalom, mivel csak este foglalkozom ezzel, csak arra van szükség, hogy a látogató másnap mikor bekapcsolja a gépet, akkor már az új tartalom látszódjon.
Ha viszont a látogatónál a böngésző gyorsító tára a merevlemezen van, akkor ez nem fog összejönni.
Merevlemezen van, nem memóriában.
De szerintem indulj el azon az úton amit többen is írtunk neked: ha frissül a tartalom, cseréld a fájlnevet és újratölti.
Hogy ez miként valósítod meg, (arra is írtunk több megoldást) de rád van bízva. Nálam pl ezt a keretrendszer megoldja simán:
Larevel esetén:
Yii esetén:
Symfony esetén:
Csak hogy a legismertebbeket említsem. Az elv mindenhol ugyanaz. (Ötletet lopni ér! :)) De amúgy ezt írtuk le mi is...
Ó, hát lopásban jó vagyok. :)
Sokszor megnézem az elődök munkáját....
Ha gondolod, a weboldal frissítése működik így is: ctrl+F5
Ekkor a teljes weboldalt újratölti, mintha csak előszőr látnád.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!