Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Mam problem z przeglądarka IE9. Po zmianie kodu strony (html) przeglądarka wyświetla zawartość pliku sprzed zmiany. Podobnie robi przeglądarka safari. Pozostałe przeglądarki działają OK.
Po zmianie nazwy pliku - wszystko jest OK. Po powrocie do starej nazwy - znowu jest źle. Pomocy !!!
Tadeusz
Krystian Rożewicz

Krystian Rożewicz Admin. /
Programista PHP

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

probowales usunac pliki tymczasowe przegladarki?

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Dokladnie jak Krystian radzi. Tutaj chodzi o pamiec podreczna przegladarek (tzw. cache). Mozesz ja wylaczyc w konfiguracji konkretnej przegladarki lub na czas testow dodac na poczatku swojej strony:
<?php
Header('Cache-Control: no-cache');
Header('Pragma: no-cache');
?>


Pozdrawiam

konto usunięte

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Jak wyzej albo odswiezaj CTRL+F5 (we wszystkich przegladarkach kombinacja klawiszy odswieza caly cache'owany content), przydatne szczegolnie do testow CSS/JS.
Marcin Gościcki

Marcin Gościcki Front-end
webdeveloper

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Sebastian Pienio:
Jak wyzej albo odswiezaj CTRL+F5 (we wszystkich przegladarkach kombinacja klawiszy odswieza caly cache'owany content), przydatne szczegolnie do testow CSS/JS.

U mnie Opeara na CTRL+F5 nawet nie reaguje. Jeśli chodzi o problem z cache'owaniem CSS/JS to polecam dodawać zmienną do linkowanego pliku:
<link rel="stylesheet" type="text/css" href="css/style.css?120611" />

Ja dodaję (tak jak w przykładzie) aktualną datę.
Karol Traczykowski

Karol Traczykowski Head of New Ventures
@ ZnanyLekarz.pl

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Marcin Gościcki:
Ja dodaję (tak jak w przykładzie) aktualną datę.

Pamiętaj tylko, że w takim przypadku przeglądarka ZAWSZE pobiera plik z serwera (bo zawsze podawana jest inna nazwa). Przy dużym obciążeniu strony możesz mieć problemy z łączem ;)

Warto pomyśleć nad rozwiązaniem, które podmienia numer/hash dołączany do nazwy pliku tylko, gdy zawartość tego pliku ulegnie zmianie. Prostsza (ale nie tak dobra) wersja, to zmiana hasha, gdy jakikolwiek plik ulegnie zmianie.
Marcin Gościcki

Marcin Gościcki Front-end
webdeveloper

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Karol Traczykowski:
Pamiętaj tylko, że w takim przypadku przeglądarka ZAWSZE pobiera plik z serwera (bo zawsze podawana jest inna nazwa).

Może trochę źle to opisałem. Nie pobieram aktualnej daty z serwera tylko aktualizuję datę kiedy modyfikuję plik.

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Idac tym tropem, nie lepiej podac tam md5 pliku ? Za pomoca md5_file() na przyklad. Co edycje hash bedzie inny.Bartosz Gałyga edytował(a) ten post dnia 12.06.11 o godzinie 15:15
Marcin Gościcki

Marcin Gościcki Front-end
webdeveloper

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Bartosz Gałyga:
Idac tym tropem, nie lepiej podac tam md5 pliku ? Za pomoca md5_file() na przyklad. Co edycje hash bedzie inny.

Jeśli o mnie chodzi to już od dawna mam taką praktykę, że zamiast nic nie mówiącego ciągu znaków trzymam datę. Na szybko napisałem skrypt dzięki któremu nie trzeba pamiętać by zmieniać parametr po modyfikacji CSS'a. Aczkolwiek jeżeli komuś zależy wyłącznie by mieć pewność, że CSS po aktualizacji się na nowo ładuje md5_file() jest równie dobrym rozwiązaniem (chyba, że md5_file() może zaważyć jakoś na wydajności).


<?php
function attachCSS($file) {
echo '<link rel="stylesheet" type="text/css" href="' . $file . '?' . date("jmYHis",filemtime($file)) . '" />';
}
?>
<?php attachCSS('css/style.css'); ?>
Marcin Gościcki edytował(a) ten post dnia 12.06.11 o godzinie 15:31

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Tylko pamietaj, ze wyniki filemtime() tez sa cacheowane :) W manualu jest napisane iz zaleca sie czyszczenie buffora plikow za posrednictwem clearstatcache(). Tyle jesli chodzi o wydajnosc. Checksum oblicza sie szybciej i wydajniej, nizeli jakakolwiek operacja na stat()

Edit:// literowki z telefonu...Bartosz Gałyga edytował(a) ten post dnia 13.06.11 o godzinie 00:33

konto usunięte

Temat: Przeglądarka IE9 widzi "starą" zawartość pliku

Marcin Gościcki:
Sebastian Pienio:
Jak wyzej albo odswiezaj CTRL+F5 (we wszystkich przegladarkach kombinacja klawiszy odswieza caly cache'owany content), przydatne szczegolnie do testow CSS/JS.

U mnie Opeara na CTRL+F5 nawet nie reaguje.

Pisalem o przegladarkach o rozsadnych udzialach, zawsze znajdzie sie czarna owca, Opera jest nisza z udzialem <2.5%. IMO nie oplaca sie optymalizowac/testowac pod tak niszowymi browserami.



Wyślij zaproszenie do