Как обновить страницу в браузере после изменения в js скрипт?
После редактирования JS скриптов, браузер (chrome) не видит изменений,
пока не изменишь путь к JS файлу и соответственно не пропишешь его в HTML странице.
Как решить эту проблему?
После удаления файла JS с сервера, HTML страница работает без изменений, Ctrl + F5 не помогает.
Сайт без CMS, только голый HTML + CSS + PHP + MYSQL.
Дополнительно:
Содержание
Специально для вас авторизовался даже. Что имею сказать: ваши курсы айти - говно. Учитесь, пробуйте, развивайтесь. В том самом G имеется куча ответов на ваш банальный вопрос. Уж простите, но, может, вы зря пытаетесь?
Что имею сказать: ваши курсы айти - говно.
Я не посещаю НИКАКИЕ курсы IT,
мало того даже пообщаться в живую не с кем,
вот и задаю такие банальные вопросы на форумах.
1) Откройте инструменты разработчика и отключите кэширование
2) Если надо, можете добавить к ссылкам на скрипты динамический хвост типа $script_url . '?t=' . time();
3)
|
1 |
// set expires header header('Expires: Thu, 1 Jan 1970 00:00:00 GMT'); // set cache-control header header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0'); header('Cache-Control: post-check=0, pre-check=0',false); // set pragma header header('Pragma: no-cache'); |
Prevent Browser Caching for PHP Script
-
1) Откройте инструменты разработчика и отключите кэширование
2) Если надо, можете добавить к ссылкам на скрипты динамический хвост типа $script_url . '?t=' . time();Не работает:
1) ни чего не меняется
2) не подгружает JS - Алексей Денисов, значит, вы делаете что-то не так.
В любом случае, без обновленных кодов клиента и сервера с этим может разобраться только телепат - MagicMight,
1. Поменял файл на сервере (просто добавил console.log('Data of Table:' , data))
2. Перезагрузил страницу Ctrl+F5
3. Открыл Консоль в браузере, далее Источники -> Страница -> file.js (он открывается видимо из кеша) файл Без изменений.
4. Поставил галочку Сеть -> Отключить кеш, все тоже самое - ничего не меняется.Конечно может что-то не так делаю, но полдня занятий ни к чему не привели,
Помог только способ с rename файла JS.P.S. Манипуляции с Header правда не пробовал .....
- Алексей Денисов, самый рабочий из предложенных вариантов (он же ходовая практика) это добавление хвоста времени к урл, как в предложенном мной п.2. Если это не помогло от кеширования, то у вас какой-то совершенно уникальный кейс
- Добрый вечер еще раз, решил написать.
Сегодня на свежую голову добавил "хвост/параметры в запрос"
PHP1<script src="js/code_script.js?time= <?php echo time(); ?> </script>
Все работает Отлично, Спасибо всем за советы.
Ответы:
Можно не менять путь, а в HTML в URL, указывающем на файл скрипта, добавить аргумент типа /script.js?random=2345785904948759438758934882940589394. И после каждого изменения скрипта менять в HTML вот это вот случайное число. Для браузера URL с другим числом - это другой файл, будет скачивать его заново.
Ну а так, HTTP сервер у вас сконфигурирован неправильно, раз при изменении даты файла не видит этого изменения, или не сообщает браузеру об изменении...
Если это в окружении разработки и сама страница не кэшируется, то как вариант, можно просто этот скрипт при каждом запросе считывать и инлайнить тегом.
Если модуль или асинхронный скрипт, то:
|
1 |
// $script = file_get_contents(...); ?><script type="module"><?=$script;?></script><? |
Если обычный скрипт, то без атрибута type.
В режиме разработки сайта просто обновляй страницу браузера со сбросом кэша (ctrl + f5)
Если страницу надо показать заказчику/работадателю - добавляй гет-параметры к скрипту.
Можно как написали выше таймстемп добавлять, можно ручками писать версию (то, что идет в конце названия скрипта после знака вопроса)
<script src="/assets/js/main.js?v=1.2"></script>
-
В режиме разработки сайта просто обновляй страницу браузера со сбросом кэша (ctrl + f5)
В первую очередь пробовал, то же самое что просто F5
В консоль разработчика, вкладка Источник видно содержимое JS - без изменений. -
Можно как написали выше таймстемп добавлять,
Спасибо - Работает.
В Chrome ctrl+r, а не f5
В итоге сделал rename() на PHP
При простом обновлении страницы, код PHP рандомно переименовывает JS файл,
и прописывает его имя в теги <script src="xxxxx.js"></script>
Спасибо Всем за Советы
Пока в очереди стоял, пробовал TOR браузер на мобильном - тоже работает,
видимо он не кеширует ничего при загрузке страниц.
Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.
Оставить комментарий Отменить
Ответы
- Есть ответ! к записи Как уменьшить масштаб меньше 100% в Windows 10 (22H2)
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Аналоги CloudFlare в России?
- Есть ответ! к записи Как называется человек, который дизайн придумает для сайта и сверстает его?
- Есть ответ! к записи Можно ли установить Яндекс.Диск на АльтЛинукс?
- Есть ответ! к записи Картинки мутные только на сафари, есть выход?
- Есть ответ! к записи Keenetic. Как настроить SSTP клиент с сертификатом?
- Есть ответ! к записи Чем заменить executor в aiogram 3?
Для обновления страницы в браузере после изменения в JavaScript скрипте, можно использовать различные методы. Один из наиболее распространенных способов - это использование метода location.reload(). Этот метод перезагружает текущую страницу, обновляя все ресурсы (включая JavaScript файлы) с сервера.
Пример использования location.reload():
Если нужно обновить страницу без перезагрузки всех ресурсов с сервера, можно воспользоваться методом location.replace(). Этот метод заменяет текущую страницу новой страницей, что приводит к обновлению содержимого страницы.
Пример использования location.replace():
Еще один способ обновления страницы - это использование метода location.reload(true), который принимает параметр true. Этот параметр указывает на то, что страница должна быть перезагружена с использованием кэша браузера.
Пример использования location.reload(true):
Наконец, можно также использовать AJAX запросы для обновления определенных частей страницы без перезагрузки всей страницы. Для этого можно использовать библиотеки типа jQuery или чистый JavaScript.
Надеюсь, эти примеры помогут вам обновить страницу в браузере после изменения в JavaScript скрипте. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их.