我试图确定我是否应该直接
1)让PHP获取图像二进制文件并输出(标头为图像类型)图像,例如:
/* $image = ... insert curl function to fetch image */
header('Content-Type: image/png');
echo $image;
或者如果我应该有
2) 标头重定向到图像的 URL 路径
header('Location: http://domain.com/pathtoimage/image.png');
一些初始问题:
首先,这是否相当于PHP必须将图像保存在内存中才能输出它的任何开销?
其次,这是否会导致客户端上出现任何无法遵循 PHP 标头重定向的错误?
我反对标头 -> 位置解决方案,因为您将向服务器添加额外的请求。请尝试以下解决方案:
if (file_exists($file)) {
header('Content-Type: image/png');
readfile($file);
exit;
}
此解决方案应具有最小的开销和内存占用。