Обновление страниц в разных Интернет-обозревателях
- Опубликовано:
Когда возникает необходимость обновить текущую открытую в Интернет-обозревателе страницу (например, ожидая увидеть на ней какие-либо изменения – особенно часто это нужно веб-разработчикам), есть несколько способов сделать это: графической кнопкой на панели инструментов Интернет-оброзревателя
Когда любопытства ради я спросил у одного своего коллеги, предпочитающего в качестве Интернет-обозревателя именно Opera, почему в ней не работает Ctrl + F5, он удивился и ответил, что, вроде как, работает – обновляет все вкладки. Я ещё раз проверил и убедился – в моей Opera 11.51 это не работает вообще никак. А если бы и работало как обновление всех вкладок, то это всё равно было бы не то, не так, как это работает в других Интернет-обозревателях (в частности, в Firefox и Internet Explorer).
И тогда я задал вопрос поисковым системам: «Почему Ctrl + F5 в Opera не работает?» Однозначного ответа получить не удалось, но зато я нашёл интересное рассуждение на эту тему, которое и сподвигло меня на небольшое исследование и написание данной министатьи по его результатам.
Я написал небольшой серверный сценарий, который просто выводил все полученные им HTTP-заголовки, и осуществил обновление его вывода всеми перечисленными способами во всех упомянутых Интернет-обозревателях:
Способ \ обозреватель | Firefox 6.0 | Internet Explorer 8.0 | Opera 11.51 |
HTTP_CACHE_CONTROL:max-age=0 | HTTP_CACHE_CONTROL:no-cache | ||
F5 | HTTP_CACHE_CONTROL:max-age=0 | HTTP_CACHE_CONTROL:no-cache | |
Ctrl + F5 | HTTP_CACHE_CONTROL:max-age=0 HTTP_PRAGMA:no-cache | HTTP_CACHE_CONTROL:no-cache | Не работает |
Ctrl + R | HTTP_CACHE_CONTROL:max-age=0 | HTTP_CACHE_CONTROL:no-cache |
Какие тут можно сделать выводы:
- графическая кнопка , клавиша F5 и комбинация клавиш Ctrl + R равнозначны во всех Интернет-обозревателях;
- комбинация клавиш Ctrl + F5 отличается от / F5 / Ctrl + R во всех Интернет-обозревателях и, кроме Opera (где Ctrl + F5 не работает), действительно вызывает более «жёсткое» обновление страницы;
- учитывая, что комбинация клавиш Ctrl + F5 в Firefox посылает не один «обновляющий» HTTP-заголовок, а сразу два (HTTP_CACHE_CONTROL и HTTP_PRAGMA), можно предположить, что обновление страницы ею для некоторых веб-серверов может быть ещё более «жёстким».
P. S. Учитывая отсутствие в Opera такого «жёсткого» обновления страницы и однообразия обновляющих HTTP-заголовков (всегда только HTTP_CACHE_CONTROL:no-cache), неудивительно, что в своё время мне так до конца и не удалось победить её кэширование CAPTCHA-картинки моего сайта, несмотря ни на добавление к адресу картинки фиктивных параметров, ни на отдачу вместе с ней дополнительных HTTP-заголовков Last-Modified, Pragma:no-cache и CacheControl:no-cache,must-revalidate. 🙁