/ / Zmiany w JavaScript nie są odzwierciedlane podczas debugowania strony WWW - javascript, php, nginx

Zmiany w JavaScript nie są odzwierciedlane podczas debugowania strony internetowej - javascript, php, nginx

Pracuję nad rozwojem strony internetowej za pomocąnetbeans IDE i używać Firefoksa do debugowania / testowania. Ilekroć dokonuję zmian w JavaScript, zmiany te nie są odzwierciedlane na stronie internetowej, kod źródłowy ujawnia przestarzały kod.

Za każdym razem, gdy wprowadzam zmiany, gwarantuję restart serwera Nginx przed otwarciem przeglądarki, wydaje mi się, że PHP działa dobrze w ten sposób, ale JavaScript nie jest zsynchronizowany z moimi zmianami w kodzie.

Pls zapewniają mi rozwiązanie tego problemu.

Odpowiedzi:

2 dla odpowiedzi № 1

Problem polega na tym, że twój przeglądarka buforuje twoje pliki, możesz wyczyścić pamięć podręczną przeglądarki lub ustawić przeglądarkę tak, aby przestała buforować pliki.

Innym sposobem na uniknięcie buforowania przeglądarki jest dodać coś (znacznik czasu lub identyfikator) z "?" na końcu twojej HTML odniesienie do pliku.

<script src="script.js?0001"><script>

Za każdym razem, gdy przeglądarka zażąda ponownego przesłania pliku, po prostu zmień tę wartość.


0 dla odpowiedzi nr 2

Aby uniknąć buforowania plików, lepiej jestobsłużyć go programowo, dodając odpowiednie nagłówki, takie jak Cache-Control i max-age. Jednak te nagłówki są różne dla różnych przeglądarek, takich jak IE, firefox itp.

Najlepszym sposobem jest oszukiwanie przeglądarki przez dodanie parametru zapytania randow, aby przeglądarka mogła uznać, że jest to inne żądanie.

<script src="myScript.js?dummyParam=12001>

Tutaj 12001 powinno być generowane różne po każdej zmianie przy użyciu znacznika czasowego lub innej wartości losowej.