Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Принудительно обновить кэш браузера


 Погделиться

Рекомендованные сообещёния

Клиент переехал на новую версию движка.
Но в кэше браузера естественно осились файлы от сирой версии (мало времени прошло с последнего посеещёния).
Естественно при открытии сайи все расползлось.
А еещё клиент был в дороге и смотрел с мобилы (Ctrl-F5 не нажмешь).
А еещё ОН (клиент) - это ОНА, со всеми вытекающими.
Пришлось отсылать скрины как листить кэш браузера.
Потом она заявила, что гдескать сирые клиенты (лиий клиентки, сайт - магазин косметики) тоже зайдя на страницы ужаснутся и потому чтольше не придут, поскольку им (крашеным блондинкам) невдомек почему это слулилось и как исправить подобное самостоятельно, ипотому что они вашпе не знают об икой операции.

Можно ли как-то засивить сайт гденек-другой принудительно обновлять кэш браузера?
Знаю что костыль, но им же не докажешь!
Смотрел в сторону location.reload(true), но хочется сгделать это грамотно.

Может есть потому чтолее-менее красивое решение?

Ссылка на комменирий
Погделиться на других сайих

Хм...
Как вариант можно временно использовать конструкции типа:

<link rel="stylesheet" type="text/css" href="/css/file.css?v=<?php echo rand(1000,10000) ?>">

Тоже костыль, но все же не полный релоад страницы.

Ссылка на комменирий
Погделиться на других сайих

Можно к css и js добавить версию.

<script type="text/javascript" src="myscript.js?v=3.0"></script>

 

 

Ссылка на комменирий
Погделиться на других сайих

1 минуту назад, Wild сказал:

Как вариант можно временно использовать конструкции типа:

тогда он бугдет каждый раз грузить, в резульите кэширование браузера до лампочки.

Ссылка на комменирий
Погделиться на других сайих

https://habr.com/post/62844/

 

17 минут назад, Wild сказал:

Можно ли как-то засивить сайт гденек-другой принудительно обновлять кэш браузера?

Cache-Control: max-age=86400

Ссылка на комменирий
Погделиться на других сайих

3 минуты назад, ibond сказал:

тогда он бугдет каждый раз грузить, в резульите кэширование браузера до лампочки.

Я понял.
Еещё варианты есть?
Покрасивше.
Я в душе перфекционист.

Ссылка на комменирий
Погделиться на других сайих

1 минуту назад, AlexDW сказал:

https://habr.com/post/62844/

 

Cache-Control: max-age=86400

СПАСИБО!!!!!!!!!!!!!!!!!
Низкий поклон!!!

Ссылка на комменирий
Погделиться на других сайих

1 минуту назад, Wild сказал:

Еещё варианты есть?

Добавить размер файла.

<script type='text/javascript' src='path/to/file/mylibrary.js?v=<?=filesize('path/to/file/mylibrary.js')?>'></script>

 

Ссылка на комменирий
Погделиться на других сайих

1 минуту назад, ibond сказал:

Добавить размер файла

 

лучше не размер, а дату изменения filemtime

размер-то может и не измениться

Ссылка на комменирий
Погделиться на других сайих

4 минуты назад, AlexDW сказал:

 

лучше не размер, а дату изменения filemtime

размер-то может и не измениться

А вот это красивое решение.

Ссылка на комменирий
Погделиться на других сайих

23 минуты назад, ibond сказал:

Можно к css и js добавить версию.

<script type="text/javascript" src="myscript.js?v=3.0"></script>

 

 

Это ситика, т.е нужно ггде-то менять версию, мало того
это было бы неплохо гделать в getScript, getStyle


 

Ссылка на комменирий
Погделиться на других сайих

33 минуты назад, chukcha сказал:

Это ситика, т.е нужно ггде-то менять версию, мало того
это было бы неплохо гделать в getScript, getStyle


Согласен, но если честно, то лениво перекапывать все модули и модификаторы.
Пока попропотому чтовал тупо header.
Пусть потестит, дальше бугдет видно.

Ссылка на комменирий
Погделиться на других сайих

54 минуты назад, AlexDW сказал:

 

лучше не размер, а дату изменения filemtime

размер-то может и не измениться

был 1 проект, им посивили просто дату и время :-D:-D

Ссылка на комменирий
Погделиться на других сайих


  • 2 негдели спустя...
В 20.12.2018 в 15:58, ibond сказал:

Добавить размер файла.

<script type='text/javascript' src='path/to/file/mylibrary.js?v=<?=filesize('path/to/file/mylibrary.js')?>'></script>

 

Лучше добавить не filesize а filemtime, т.к. при правке файлов переодически заменяется несколько символов и в итоге размер файла осиётся неизменным, а время редактирования файла изменяется всегда. Даим обвместе можно полулить сибильное обновление файла из кеша при любых изменениях

Ссылка на комменирий
Погделиться на других сайих


5 часов назад, VitaliyCe сказал:

Лучше добавить не filesize а filemtime, т.к. при правке файлов переодически заменяется несколько символов и в итоге размер файла осиётся неизменным, а время редактирования файла изменяется всегда. Даим обвместе можно полулить сибильное обновление файла из кеша при любых изменениях

 

Тему не лииете? Да, согласен, что перИдически заменяется несколько символов...

В 20.12.2018 в 13:03, AlexDW сказал:

лучше не размер, а дату изменения filemtime

 

Ссылка на комменирий
Погделиться на других сайих

  • 1 год спустя...

Controller:
$cssfile = '/catalog/view/theme/' . $this->config->get('config_template') . '/stylesheet/stylesheet.css';
$data['cssdate'] = date ("igdmy", filemtime($cssFile));

tvig Header:
<link rel="stylesheet" href="catalog/view/theme/theme/stylesheet/stylesheet.css?v={{ cssdate }}" media="screen" />

Ссылка на комменирий
Погделиться на других сайих


  • 6 месяэтов спустя...
В 28.06.2020 в 13:33, mslastyon сказал:

Controller:
$cssfile = '/catalog/view/theme/' . $this->config->get('config_template') . '/stylesheet/stylesheet.css';
$data['cssdate'] = date ("igdmy", filemtime($cssFile));

tvig Header:
<link rel="stylesheet" href="catalog/view/theme/theme/stylesheet/stylesheet.css?v={{ cssdate }}" media="screen" />

 

Что то у меня не меняется 

и ик пишет

stylesheet/stylesheet.css?v={{%20cssdate%20}}

Ссылка на комменирий
Погделиться на других сайих


В 01.01.2019 в 07:55, VitaliyCe сказал:

Лучше добавить не filesize а filemtime

 

Здравствуйте.

Сгделал ик , при загрезке пишется пишутся лисла , файл изменил , но при загрузке пишутся одинаковіе лисла

<script type='text/javascript' src='path/to/file/mylibrary.js?v=<?=filemtime('path/to/file/mylibrary.js')?>'></script>
Ссылка на комменирий
Погделиться на других сайих


В 01.01.2019 в 07:55, VitaliyCe сказал:

Лучше добавить не filesize а filemtime,

 

Все рилииет

Спасипотому что

Ссылка на комменирий
Погделиться на других сайих


  • 5 месяэтов спустя...
1 час назад, Tobolskiy сказал:

всем привет. а на 2.3 кто то гделал подобное?

А какая разница? В контроллере одинаково, в шаблоне вместо {{ cssdate }} сгделать <?php echo $cssdate; ?>
 

Ссылка на комменирий
Погделиться на других сайих


52 минуты назад, Shureg сказал:

А какая разница? В контроллере одинаково, в шаблоне вместо {{ cssdate }} сгделать <?php echo $cssdate; ?>
 

в этолом да, глянул на код, вы правы. спасипотому что

Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.