1

メールでダイナミックな画像を表現したいのですが。たとえば、指定されたURLを使用します

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

サーバー内のロジックに基づいて別のイメージを提供したいと思います。特定のリクエストの結果を表すために使用される静止画像は2〜4枚のみです。

私が考えていた2つのオプションは次のとおりです。

  1. おそらくimagecreatefromjpegを使用して画像を直接提供する
  2. または302リダイレクトを生成します

各リクエストが限られた数の画像の1つになることを考えると、リダイレクトによってリソースが節約され、ユーザー側でもキャッシュが利用される可能性があると思いました。各リクエストの結果は、ユーザーと時間に応じて変化します。おそらく、リダイレクトを使用すると、SEOまたはスパムフィルタリングにある程度の影響がありますか?

最善の方法についてのご意見をいただければ幸いです。

4

1 に答える 1

2

私が考えていた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が同じになるため、キャッシュの有効期限を設定していることに注意してください。ただし、コンテンツが変更される可能性があります。これにより、キャッシングシステムが混乱する可能性があります。

各リクエストが限られた数の画像の1つになることを考えると、リダイレクトによってリソースが節約され、ユーザー側でもキャッシュが利用される可能性があると思いました。

同じファイルの内容が異なるため、実際にはその逆です。適切な画像が表示されるように、毎回コンテンツを再検証してもらいます。

于 2011-05-13T17:45:38.963 に答える