У меня есть скрипт PHP, который вызывается с параметром ?img=.
Значением этого параметра является (URL-кодированный) URL-адрес изображения.
Мой скрипт проверяет, хранится ли уже это изображение на моем сервере.
Если нет - скачивает. После этого он необязательно изменяет размер изображения и отправляет его в STDOUT, т.е. обратно в запрашивающий браузер, с добавлением заголовков Content-Typeи Last-modified:
Connection:close
Content-Type:image/jpeg
Date:Fri, 01 Jun 2012 08:28:30 GMT
Last-Modified:Fri, 01 Jun 2012 08:02:44 GMT
Server:Apache/2.2.15 (CentOS)
Transfer-Encoding:chunked
X-Powered-By:PHP/5.3.3
Это необходимо для Обходной путь для обхода некоторых междоменных проблем и хорошо работает для меня уже более года:
Однако я хотел бы добавить функциональность для обработки входящего заголовка If-Modified-since— для отправки Not Modified 304 ответ.
Мои вопросы:
1) Возможно ли это вообще в PHP при запуске в Apache?
2) Как обрабатывать (т.е. анализировать и создавать) даты, которые лучше всего использовать в PHP?
Дополнительный вопрос) Как добавить заголовок Content-Lengthдля изображений с измененным размером?
Мой код приведен ниже (я опустил часть загрузки CURL):