Не кешира
Съвременните браузъри често използвани от локалния кеш. Какво означава това? Това означава, че на браузъра, получени от сървъра на HTML документ, изображение или друг ресурс, го поставя в своя локален кеш (с други думи, записи, получени чрез ресурса на машина твърд диск на потребителя) и до такъв ресурс в бъдещи искания не се свърже със сървъра, и получава ресурс от локален кеш.
Този алгоритъм на браузъра значително увеличава скоростта на зареждане на HTML документ. Тъй като, ако ресурсът е заредена, и като резултат е в локалния кеш, времето за достъп е не определя от капацитета на капацитета на канал за комуникация (например връзка модем) и скоростта на твърдия диск.
Въпреки това, заедно с предимствата на този метод също поражда редица проблеми. По-специално, най-начинаещите уеб-програмисти за разработване на динамични уеб сайтове, които се сблъскват със същия проблем. Същността на проблема се крие във факта, че вместо повторно свързване със сървъра за дадена страница, скриптът се изпълнява на сървъра, модифициране на определена информация, браузърът отива на локалния кеш. В резултат на това тези три референции, няма три модификации на информацията, разположена на сървъра и само един.
За това ще принуди браузъра всеки път да кандидатства за страница на сървъра, който искате да се предотврати браузъра въведете ресурса в кеш паметта. Това са най-често срещаните методи, за да забранят или кеширане позволяват да се придвижва.
Генериране на нов URL
Всеки път, когато резултатите от търсенето ще бъдат кеширани, но тъй като кеширане се извършва около адреса, а след това всеки път, когато нов URL и браузъра ще се окаже, да бъде принуден да поиска от ресурса от сървъра като URL две заявки няма да съвпадат точно.
колекторни полета
Управление на кеширане, можете също така от страна на сървъра. За този ресурс, изпратени към браузъра, следван от полета в заглавието. Подробно описание на полетата на заглавието може да се намери в стандартни RFC 2068, който описва HTTP 1.1 протокол.
Валидна поле глава
Стойността на този дял е датата, след което съдържанието на ресурса ще е актуално. Ако потребителят след тази дата, за да получите достъп до ресурс, браузърът трябва да поиска ресурса от сървъра, а не от локалния кеш.
Ако полето> Изтича<содержит дату, прошедшую, по отношению к текущей, то при следующем обращении к ресурсу браузер будет вынужден снова обратиться к серверу. Это произойдет вследствие того, что либо документ не будет занесен в кэш - как уже устаревший, либо при обращении к кэшу браузер определит, что документ уже устарел. Следующий листинг на PHP демонстрирует использование заголовка Expires:
глава Last-Modified поле
Стойността на този дял е датата на последната актуализация на ресурса. Повечето съвременни браузъри използват следния алгоритъм, ако ресурсът вече е в локалния кеш:
- поиска от сървъра последната актуализация на ресурса
- сравнява получи дата и датата на ресурса в локалния кеш
- ако ресурсът на сървъра е по-нов ресурс в кеша - необходимият ресурс от сървъра
Ако ресурсът се намира на сървър, който съдържа това поле е текущата дата, браузърът всеки път ще поиска ресурс от сървъра, а не от локалния кеш. Следващият списък показва използването на областта заглавната Last-Modified:
заглавната част Кеш-Control и Pragma
На последно място, областта заглавната пряко отговорен за кеширане на ресурсите. поле
Второто поле е дефиниран в стандарта RFC 2068, който описва HTTP 1.1 протокол. Това поле с глава ви позволява да забраните кеширането, всеки път, за да заявите ресурс от сървъра. Следващият списък показва използването на заглавната Cache-Control и Pragma за не кеша: