Лучший способ обслуживать динамическое изображение для почты - PullRequest
1 голос
/ 13 мая 2011

Я хотел бы представлять динамические изображения в электронном письме.Например, с указанным URL-адресом

<img src="http://myserver.com/index.php/user_key/thispagestate.jpg" />

я бы хотел использовать другое изображение на основе логики на моем сервере.Для представления результата любого запроса будет использоваться от 2 до 4 статических изображений.

2 варианта, которые я имел в виду:

  1. для непосредственного обслуживания изображений с использованием, возможно, imagecreatefromjpeg
  2. или генерации 302 перенаправлений

Поскольку каждый запрос приводит к одному из ограниченного числа изображений, я думал, что перенаправление может сэкономить ресурсы с нашей стороны и также использовать кэширование на стороне пользователя.Результат для каждого запроса будет меняться в зависимости от пользователя и времени, возможно, использование перенаправлений будет иметь определенные последствия для SEO или фильтрации спама?

Ваше мнение о лучшем методе будет оценено

1 Ответ

2 голосов
/ 13 мая 2011

Я имел в виду 2 варианта:

  1. для непосредственного обслуживания изображений с использованием
  2. возможно, imagecreatefromjpeg или создание 302 перенаправлений

Я бы пошел с # 1 в этом случае, хотя, поскольку это статическое изображение, вы можете просто использовать:

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header('Content-Type: image/jpg'); // or image/png, etc.
echo file_get_contents($image_path); // where $image_path is the path to the image
exit;

.Вам нужно было бы использовать функции GD только в том случае, если вы пытаетесь сделать что-то вроде добавления текста поверх статического изображения.

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

Поскольку каждый запрос приводит к одному из ограниченного числа изображений, я думал, что перенаправление может сэкономить ресурсы с нашей стороны и также использовать кэширование на стороне пользователя.

На самом деле все наоборот, поскольку один и тот же файл теперь будет иметь разное содержимое.Вам нужно, чтобы они каждый раз повторно проверяли содержимое, чтобы убедиться, что отображается правильное изображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...