Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z pamięcią podręczną przeglądarki
Forum PHP.pl > Forum > Po stronie przeglądarki
ToKaSz
Schematyczny opis problemu:

1. Na mojej stronie użytkownicy uwierzytelnieni są za pomocą zmiennej sesji i jako tacy mają dostęp do treści nie dostępnych dla innych. Wylogowanie następuje oczywiście przez zniszczenie sesji.

2. W nagłówku html stron umieszczone są następujące linie:

  1. <META HTTP-EQUIV="Expires" CONTENT="0">
  2. <META HTTP-EQUIV="Cache-Control" CONTENT="no-store, no-cache, must-revalidate">
  3. <META HTTP-EQUIV="Cache-Control" CONTENT="post-check=0, pre-check=0">
  4. <META HTTP-EQUIV="Pragma" CONTENT="no-cache">


Chyba nie wymagają dłuższego omówiania - w teorii mają zabezpieczać przed ładowaniem stropnyz pamięci podręcznej.

3. Po wylogowaniu naciskamy przycisk "wstecz" przeglądarki i...

a) przeglądarka Firefox ładuje poprzednią stronę z serwera.
cool.gif IE ładuje poprzednią stronę z pamięci podręcznej (czyli kaszanka).

4. Problem o tyle mnie zaciekawił, że ostatnio zaobserwowałem odwrotną zależność na serwisach takich jak onet.pl, czy epf.pl, gdzie mam konta e-mail. W tych portalach po wylogowaniu i naciśnięciu przycisku "wstecz" przeglądarki...

a) IE sprawdza sesję i ładuje stronę logowania (jak to zrobili - musi być jakiś skrypt wykonywany po stronie przeglądarki, zmuszający do przeładowania strony z serwera i sprawdzenia sesji przez php.)
cool.gif FF (sprawdzane na NS pracującym w trybie FF i na FF Portable) pokazuje natomiast ostatnio oglądaną stronę mojej skrzynki pocztowej z pamięci podręcznej (o zgrozo - uważajcie i zawsze po wylogowaniu zamykajcie przeglądarkę, aby wyczyścić pamięć podręczną).

Pytanie:
Jak uniwersalnie zabezpieczyć stronę przed ładowaniem z pamięci podręcznej przeglądarki?

Tomasz
erix
W manualu funkcji header" title="Zobacz w manualu php" target="_manual masz podane przykładowe nagłówki do tego celu.
ToKaSz
Czytałem wcześniej manual, wypróbowywałem i nic.

Po treści składni nagłówków php można się zorientować, że mają one dokładnie takie samo zadanie jak nagłówki html - bo właśnie je mają "symulować". Problem jest taki, że IE nic sobie z nich nie robi, zarówno z jednych, jak i z drugich. Po kliknięciu "wstecz" szybciutko ładuje stronę z cachu (co innego FF, który reaguje prawidłowo na oba typy nagłówków).

To musi być coś robione po stronie przeglądarki, bo przecież przy ładowaniu strony z pamięci podręcznej przeglądarki żaden skrypt po stronie serwera nie jest wykonywany. Jeśli się mylę to mnie poprawcie, bo nie jestem w tym biegły.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.