在https中显示http图像的麻烦

时间:2015-06-14 14:57:08

标签: php image http https

我需要在我的https网站中嵌入http图片,因为如果只是使用<img src="http://www.sof.com/abc.jpg"/>将无法在https网站中显示。

之后,我正在搜索此功能的一些主题,我发现像<img src="https://www.some.com/image.php?url=http://www.sof.com/abc.jpg" />这样的内容可以在https中显示

所以现在我是genarate 2来源。 1是图像文件:http://www.website1.com/abc.png

并且https网址为https://fb.ccc.com

之后我创建了image.php代码如下:

<?  
        $strFile = base64_decode(@$_GET['url']);
        $strFileExt = end(explode('.' , $strFile));
        if($strFileExt == 'jpg' or $strFileExt == 'jpeg'){
            header('Content-Type: image/jpeg');
        }elseif($strFileExt == 'png'){
            header('Content-Type: image/png');
        }elseif($strFileExt == 'gif'){
            header('Content-Type: image/gif');
        }else{
            die('not supported');
        }
        if($strFile != ''){
            $cache_expire = 60*60*24*365;
            header("Pragma: public");
            header("Cache-Control: maxage=". $cache_expire);
            header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $cache_expire).' GMT');



        }
        exit;
?>

如果我请求链接:https://fb.ccc.com/image.php?url=http://www.website1.com/abc.png,那么该页面将会重新not supported

我也尝试$strFile = $_GET['url'];,但它只显示空白。 如果我尝试$strFile = var_dump(@$_GET['url']);,该页面将重新string(31) "http://www.website1.com/abc.png" not supported

所以有人可以帮忙找出我的脚本问题是什么?

非常感谢你!

0 个答案:

没有答案