我想在php上创建一个Image Header页面,我可以在其中包含一些带有非ssl的URL以拥有一个完整的ssl加密网页,例如来自duckduckgo的这项服务:
http://images.duckduckgo.com/iu/?u=http://4.bp.blogspot.com/-JOqxgp-ZWe0/U3BtyEQlEiI/AAAAAAAAOfg/Doq6Q2MwIKA/s1600/google-logo-874x288.png
此时我的页面显示了像duckduckgo这样的图像,但如果我包含一个类似于duckduck的模式的URL(www.example.org/img.php?img=http://www.image.php/img.jpg)。图像无法加载。我认为它是图像标题的问题。
我的代码:
<?php
session_start();
$img = $_GET["img"];
echo imagejpeg($img);
?>
<html>
<head>
<meta content="width=device-width; height=device-height;" name="viewport">
</head>
<body>
<img class="decoded" alt='<?php echo $img; ?>' src='<?php echo $img; ?>'>
</body>
</html>
答案 0 :(得分:0)
您想要的是通过服务器将图像从服务器加载到客户端。 您可以通过创建一个公共分离的php文件来完成此操作,例如image.php。
所以用你在html页面上的代码制作一个php文件image.php。您只需将这段代码放在首位:
header('Content-Type: image/jpeg');
现在您可以将其称为:http://your-domain.com/image.php?img=https://your-domain.com/images/your-image.jpg
答案 1 :(得分:0)
我认为您首先需要创建图像,并在创建图像后调用imagejpeg()函数。
$img = $_GET['img'];
$generated_img = imagecreatefromjpeg($img);
imagejpeg($generated_img);
您可以在代码外部处理图像,并在图像元素的<img src="img.php" />
答案 2 :(得分:0)
<?php
session_start();
if ($_GET["img"] != '')
{
$img = $_GET["img"];
header('Content-Type: image/jpeg');
echo imagejpeg($img);
exit();
}
?>