2013-03-09 121 views
0

我试图通过PHP脚本提供所有图像。最终目标是在满足某些条件的情况下动态替换图像,但现在我只想让脚本返回特定的图像文件。我有一个.htaccess发送所有图像请求到这个脚本,但此时图像没有显示在页面上。通过PHP脚本替换图像

PHP脚本的全部内容:

$img = '/imgs/img1.jpg'; 
$type = 'image/jpeg'; 
header('Content-Type:'.$type); 
header('Content-Length: ' . filesize($img)); 
readfile($img); 

我想这是重定向到这个脚本图像请求的URL。根据条件,我想要立即提供图像或使用图像生成一个新的GD并返回。

+1

为什么要通过HTTP下载图像?为什么现在不从磁盘提供它?您可能没有启用HTTP fopen包装。您也可以根据需要重定向到图像。 – Brad 2013-03-09 15:03:16

+0

我同意,而是给图像的相对路径。 – Ares 2013-03-09 15:53:48

+0

将文件路径更改为/imgs/img1.jpg,但仍然不起作用 – user1968070 2013-03-09 16:18:44

回答

1

您正在给硬盘中的位置指定路径,而不是docroot。因此,除非文件位于/ imgs /中的硬盘驱动器中,否则无法正常工作。试试:

$img = $_SERVER['DOCUMENT_ROOT'] . '/imgs/img1.jpg'; 
$type = 'image/jpeg'; 
header('Content-Type:'.$type); 
header('Content-Length: ' . filesize($img)); 
readfile($img);