Здравствуйте. Есть динамические GD изображения (баннеры, которые позже будут использоваться в подписи на форуме).
Но при каждой загрузке данного изображения, следует запрос на сервер, на котором выполняется скрипт, после чего выводится изображения. Следственно помимо нагрузки на сервер, само изображение достаточно долго грузится.
Видел аналогичные скрипты, но изображение грузится долго только при первой загрузке. Пришел к выводу что там стоит кэширование на стороне клиента.
В итоге - надо прикрутить к своему скрипту возможность кэширование на стороне клиента, с обновлением каждых несколько часов.
Реально такое сделать?
Заранее благодарю за ответ.
1. byfahrenheit - 19 Июля, 2011 - 18:41:10 - перейти к сообщению
2. grefon - 19 Июля, 2011 - 19:28:48 - перейти к сообщению
Кеширование стоит не на стороне клиента а на стороне сервера. Я такое делал для скриншотов сайтов и подобной тематики. В скрипт нужно вставить проверку на существование файла изображения. Если файл существует, то выводим его пользователю. Если файла нет, то запускаем скрипт создания изображения, после его создания сохраняем результат в файл и выводим этот результат пользователю.
3. byfahrenheit - 19 Июля, 2011 - 20:31:59 - перейти к сообщению
Делал так, но все равно картинка грузится относительно долго, в сравнении с подобными скриптами. Тут именно фишка в том, что браузер должен сам закэшировать ее, и обновлять через определенный промежуток времени
4. LIME - 19 Июля, 2011 - 20:46:35 - перейти к сообщению
byfahrenheit браузер кэширует по умолчанию, а указать время актуальности
можно через заголовок Cache-control
http://htmlweb[dot]ru/other/http_headers.php
можно через заголовок Cache-control
http://htmlweb[dot]ru/other/http_headers.php
5. byfahrenheit - 19 Июля, 2011 - 20:59:01 - перейти к сообщению
Беру например этот пример:
насколько я понял, он должен закэшировать текущее время на 1 час. В результате после обновления страницы - время обновляется....