Drodzy forumowicze,
mam Debiana, na nim Apache/2.4.10 i PHP 5.6.7-1.
Jak zmusić serwer, aby udostępniał aktualną wersję plików?
Zmieniam zawartość jakiegoś pliku php – np. abcd.php.
Otwieram go w przeglądarce (serwer.domena.pl/abcd.php).
Ładuje się stara zawartość. Jakby z jakiegoś cache.
Wyczyściłem już pamięć podręczną przeglądarki, ale to nic nie daje.
Jak zmienię np. nazwę na abcd1.php, i załaduję ten plik, to jest nowa zawartość.
Kolejna zmiana w pliku to samo.
Z pozdrowieniami
Sprawdź cache albo ustaw odpowiedni nagłówek cache w samym pliku php.
Jak sprawdzić ten cache?
Mam pusty katalog "/var/cache/apache2/mod_cache_disk".
W "/etc/apache2/mods-enabled" mam cache.load z zawartością
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control
Dziękuję bardzo.
To dość ogólny opis i chyba uniwersalny, a mi chodziło o to, gdzie w tym Apache to ustawić.
No ale może znajdę.
Dodałem
Pokaż nagłówki z inspektora przeglądarki. Chrome też bardzo agresywnie trzyma cache.
O https://zapodaj.net/images/bc6dba2b6db5d.jpg chodzi?
To chyba nie jest problem przeglądarki.
Otworzyłem stronę w innej przeglądarce Operze (wcześniej Firefox) i też jest stara zawartość.
Otworzyłem stronę w prywatnym trybie i też jest stara treść.
Otworzyłem stronę na innym komputerze, gdzie w ogóle nie była ona otwierana i też jest stara treść.
Apache serwuje tę treść.
Gdy zmienię nazwę pliku i załaduję w przeglądarce to jest właściwa treść.
Gdy znowu w pliku coś zmienię to ponownie ładuje się treść sprzed zmiany.
Po raz kolejny mogę zmienić nazwę i znowu jest dobrze.
https://zapodaj.net/images/49f36fa42dcba.jpg jeszcze wyciąg z działania phpinfo(), zawierający parametry mające w nazwie "cache".
Dodam jeszcze, że jak coś zmieniam w pliku html, to zawartość wyświetla się w przeglądarce aktualna.
Czyli problem dotyczy php. Jak w pliku PHP coś zmienię, to się wyświetla stara zawartość.
Jak zrestartuję Apache2, to się wyświetla aktualna.
Po zmianie zawartości pliku PHP ten sam problem.
Próbowałeś?
https://stackoverflow.com/questions/21556437/disable-opcache-temporarily
9 maja 2022 19:38
Zmieniłem nazwę pliku /etc/php5/apache2/conf.d/05-opcache.ini na kompletnie inną z innym rozszerzeniem i zrestartowałem Apache2.
Teraz zawartość plików PHP wyświetla się prawidłowo po każdej zmianie i przeładowaniu w przeglądarce jest nowa zawartość.
W tym samym momencie chyba na to "opchace" wpadliśmy.
Dziękuję bardzo.
Nie wiem tylko, czy usunięcie pliku (zmiana nazwy) jest prawidłowa, czy lepiej dokonać innej zmiany.
Ja bym spróbował wyłączyć moduł.
Jeśli nie chcesz, to sprawdź czy nie odkładają się gdzieś w logach błędy.
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)