Почему Safari кэширует старые страницы на iPhone даже после того, как вы загрузили новую страницу?

5

Это может быть проблема, характерная для Reddit.com, но я обнаружил, что если я перейду по ссылке на другой сайт в мобильном сафари и нажму, то только часть времени я буду видеть последнюю копию страницы. Много раз я видел копию страницы, которую несколько недель назад по каким-то причинам кэшировал мобильный Safari.

Для ясности вот что происходит:

  1. Я посещаю Reddit 1 марта в мобильном Safari, нажимаю на некоторые ссылки, все работает.
  2. Позже я посещаю Reddit 3 марта и вижу домашнюю страницу 3 марта.
  3. Я нажимаю на ссылку, чтобы посетить другой сайт вне reddit, а затем нажимаю назад, чтобы вернуться на reddit.com
  4. Я вижу 1 марта копию reddit.com
Майкл Прайор
источник
Итак, вы переходите на веб-сайт, например, reddit.com, нажимаете ссылку на этом сайте и переходите в другое место, затем нажимаете назад, и вы видите старую / кэшированную версию reddit.com?
matthewpavkov
@matthewpakov уточнил вопрос.
Майкл Прайор
У меня та же проблема на iPad и iPhone, но это началось только после обновления до iOS 5
Стю Уилсон,

Ответы:

2

Я предполагаю, что это как-то связано с базовыми данными, предупреждениями памяти или обоими. Если Apple использует свой собственный набор, то она сохраняет кэш в хранилище Core Data, которое, по сути, является неупорядоченным набором. Моя теория состоит в том, что когда вы заходите на сайт, Safari идет в хранилище Core Data и получает первый экземпляр рассматриваемого URL-адреса, если он существует, который может быть старым, новым и так далее. Но так как я также не думаю, что Apple будет настолько небрежным, я бы сказал, что каждая страница пытается кэшировать, но объем данных, необходимый для правильного кэширования сайта, связан с предупреждениями памяти, которые вы, как пользователь Никогда, никогда не увидите, только на этот раз новая страница просто не кэшируется, и поэтому вы видите случайные старые страницы.

Хорошо, это было немного техническим. Короче говоря, я думаю, что Safari пытается поддерживать чистый кэш, но ограничения памяти устройства не всегда позволяют этому случиться.

Филип Реган
источник
1

У меня та же проблема. Если вы идете в «Настройки»> «Safari»> «Очистить кэш», он исправляет это в течение недели или около того.

Страница, на которой это происходит со мной, - http://www.google.com/m/ig - моя домашняя страница в Safari, которую я использую для чтения последних новостей и тому подобного.

Кроме того, Филипп упомянул, что это может быть проблема с памятью, которая может иметь место на iOS4, но на моем 3GS с iOS3 у меня никогда не было проблем с памятью и анимации, и такие были превосходными. Я считаю, что iOS4 очень плохо справляется с управлением памятью / приложениями.

ScottN
источник