Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Не обновляется кэш у юзеров (https://javascript.ru/forum/css-html/49759-ne-obnovlyaetsya-kehsh-u-yuzerov.html)

Maggie 27.08.2014 15:12

Не обновляется кэш у юзеров
 
Всем привет. Есть сайт www.gulftravel.com.ua у которого отключено кэширование, т.к. информация на сайте меняется каждый день. И у некоторых посетителей кэш не обновляется, они видят старый курс валют. Непонятно из-за чего, то ли с компом что-то, то ли с браузерами, хранением инфы. Если бы проблема была в сайте - то у всех был бы курс старый.
Вопрос: Возможно ли создать какой-нибудь скрипт для "особых" юзеров, чтоб, в случае если чел не следит за своим компом и браузерами, и если у него всегда хранится история, то этот скрипт каким-то макаром перебивал настройки браузера на стороне юзера, и загружал текущую страницу в данный момент времени как есть?
Если ответ да, то что это за скрипт должен быть?
p.s.: С Js'ом не очень дружу

ixth 27.08.2014 19:39

Проблема на стороне сервера, курс генерится именно там.

Maggie 27.08.2014 23:17

ixth,
Думаете? Я просто не понимаю что Вы конкретно имели ввиду, т.к. курс я меняю в html-странице, каждый день. И если дело в сервере, как можно устранить эту проблему?

ixth 28.08.2014 00:55

Цитата:

И у некоторых посетителей кэш не обновляется, они видят старый курс валют.
При каких условиях это происходит? Много таких пользователей?

Цитата:

Я просто не понимаю что Вы конкретно имели ввиду, т.к. курс я меняю в html-странице, каждый день.
Там что, просто html-файлы?

Aetae 28.08.2014 01:33

1. Сервер отдаёт заголовок для index.html\php
Cache-Control:"max-age=15552000"
Это 6 месяцев.

2. Тег
<meta http-equiv="Cache-Control" content="no-cache"/>
находится в body вместо head, что не по стандарту.

Соответственно без кэша сайт работает только в максимально толерантных браузерах, тех которым пофиг на положение meta и при этом ставящих значения из кода страницы выше значений с сервера. Какие это браузеры - не знаю, тут надо экспериментировать.)

Вам следует: 1. настроить сервер\отдавать верный заголовок(header) серверным языком - в зависимости от того что используется.
2. поставить meta в правильное место.
Для гарантии оба пункта должны быть выполнены(но теоретически - достаточно ответа сервера и недостаточно meta).

Maggie 28.08.2014 11:24

Aetae, спасибо, вроде бы понятно. Но я не знаю в какой именно файл на сервере нужно поместить заголовки. Я нашла index.php но не могу его открыть, появляется ошибка.

Aetae 28.08.2014 11:52

Ну поставьте хотябы meta на место. А заголовок надо ставить для той страницы, что не должна сохраняться в кэше, очевидно же.) Главная страница у вас толи index.php, толи index.html - я не знаю. Если у вас ограниченный хостинг со встроенной cms на которую у вас нет прав влиять - обратитесь в техпод с вопросом по кеш заголовку. Если всё своё - разбирайтесь, что за ошибка.
По серверу вы можете помочь только сами себе, мы отсюда не видим, что у вас там накручено.

Maggie 28.08.2014 14:45

Aetae, поставила meta на место, только там стоит:
<meta name="Cache-Control" content="no-cache">
вместо:
<meta http-equiv="Cache-Control" content="no-cache"/>

Из-за того что эти метатэги указаны с помощью typoscript, который выглядит так:
page.meta.Cache-Control = no-cache

Это критично? Я просто не знаю как прописать вместо <meta name="...">
<meta http-equiv=...">

Aetae 28.08.2014 15:31

meta name изначально предназначен для описательеных параметров, meta http-equiv для заголовков запроса. Потому это даёт третью развилку: одни браузеры поймут name другие нет.:)

Таки со всем эти вам надо либо разбираться самостоятельно, либо полностью описать: какой у вас сервер, на каком языке написана серверная часть, какая cms используется(если используется), есть ли у вас доступ ко всему коду, или пользуетесь услугами стороннего провайдера итд. И даже после этого это будет игрой в испорченный телефон.

Maggie 28.08.2014 16:32

Ох, единственное что знаю:
Сервер - Hetzner Online AG
на каком языке написана серверная часть - надеюсь на php
какая cms используется - Typo3
есть ли у вас доступ ко всему коду - есть


Часовой пояс GMT +3, время: 00:33.