2013-07-25 3 views
0

При разработке веб-проект, я хочу, чтобы профиль этого так часто, как я могу, но я использую внешние ресурсы, такие как изображения lorempixel.com с URL изображений, такие как: http://lorempixel.com/300/100/nature/6/контроля кэша для изображений, предоставленных внешним скриптом

Это мой файл .htaccess (соответствующая часть):

<FilesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif)$"> 
Header set Cache-Control "max-age=3600, public" 
</FilesMatch> 

Это, однако, не оказывает никакого влияния на поведение кэширования предоставленному URL, который имеет смысл в определенной степени. Мой вопрос в том, как я могу кэшировать что-то вроде этого, по крайней мере, на время разработки страницы. Но вместо профилирования после того, как все сделано, мне нравится делать это и во время процесса разработки. Предупреждения с помощью инструментов профилирования и ужасающие времена загрузки из-за медленного ответа (медленный по сравнению с тем, если я буду хранить изображение локально) могут раздражать.

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

Возможно, даже кэширование всего от lorempixel.com было бы неплохо, если это возможно. Обычно кто-то это делает, но теперь я сам по себе, поэтому я был бы признателен за любую помощь.

+0

Инструкции по кешированию отправляются через HTTP-заголовки - поэтому они должны поставляться с ответом HTTP, отправленным сервером lorempixel.com. Вы только здесь должны были настроить ваш apache как прокси-сервер для определенных URL-адресов/доменов, чтобы вы могли f.e. запросите 'http: // yourdomain.local/lorempixel.com/300/100/nature/6 /' вместо этого и добавьте кеширование информации самостоятельно. – CBroe

+1

Или иначе, без фактического проксирования с помощью apache: Request 'http: // yourdomain.local/lorempixel.com/300/100/nature/6 /' - если это уже существует как локальный файл, попросите apache выполнить это с вашим собственные кеширующие заголовки, а если он еще не существует, перепишите запрос на какой-то скрипт (PHP, PERL), который запрашивает изображение со своего сервера и сохраняет его локальную копию. – CBroe

+0

@CBroe Звучит умный, напишите как ответ, и вы получите свое согласие. –

ответ

0

Или другой способ, фактически не проксирование от апача:

запроса http://yourdomain.local/lorempixel.com/300/100/nature/6/ - если это существует как локальный файл уже есть апач доставить, что с вашими собственными заголовками кэширования, и если он уже не существует, перепишет запрос на какой-то скрипт (PHP, PERL), который запрашивает изображение со своего сервера и сохраняет его локальную копию.

Смежные вопросы