Menu
RSS
Kategorie
Nejnovější články
Nejnovější komentáře
| Last.fm - The Zero | |
|---|---|
| Pos | Interpret (skladby) |
| 1 | E-Type (2933) |
| 2 | Groove Coverage (2400) |
| 3 | Sylver (1564) |
| 4 | Ace of Base (1449) |
| 5 | Maya (1295) |
| 6 | Cascada (1108) |
| 7 | Solid Base (1064) |
| 8 | Lewron Orchestra (922) |
| 9 | Milk Inc. (887) |
| Last.fm - Borek | |
|---|---|
| Pos | Interpret (skladby) |
| 1 | Coldplay (1348) |
| 2 | Pink Floyd (901) |
| 3 | Brian Tyler (671) |
| 4 | Jaromír Nohavica (622) |
| 5 | Louis Armstrong (412) |
| 6 | Karel Kryl (393) |
| 7 | Daft Punk (326) |
| 8 | Vladimír Mišík (274) |
| 9 | Bobby McFerrin (240) |

FF a Cache-control: no-store
Jak jistě mnozí z vás ví, Firefox 1.5 má v sobě funkci, která se označuje jako Fastback, někteří tomu říkají DOM Cache, bfcache a odborně se tomu říká browser.sessionhistory.max_total_viewers.
Oproti Opeře, která dokáže bez jakýchkoliv větších nároků fastback na mnoho mnoho kroků dozadu/dopředu, standardní nastavení FF se odvíjí podle přítomné RAM (a pro 512MB je to 5 stránek), protože jedna stránka zabírá údajně průměrně 4 MB.
Proč o tom ale píšu? Protože podle RFC 2616 slouží no-store k označení privátních dat, která se (s výjimkou historie v prohlížeči) nesmí ukládat. Autoři FF si zřejmě řekli, že no-store stránky budou natolik citlivé, že je raději nedají ani do cache (tohle je hodně diskutabilní, ale rozhodně to není jednoznačně špatně).
Problém je v tom, že PHP při použití funkce session_start() automaticky nastaví Cache-control na "absolutně necachovat" včetně no-store. Podle mého jsou ale sessions někde využívány k účelům, ke kterým běžně stačí no-cache (cache smí stránku uložit, ale při každém vyžádání musí ověřit, zda nedošlo ke změně stránky).
Bohužel právě využívání sessions pak vede k tomu, že na některých stránkách fastback ve FF nefunguje. Takže jestli chcete trochu optimalizovat stránky pro FF, přidejte po session_start() ještě
header('Cache-control: no-cache,max-age=0,s-maxage=0,must-revalidate');Funguje bez problémů, ověřeno v praxi na Cold War.