이미지 땡겨와서 출력하기

by 조쉬 posted Sep 28, 2018
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

query 플러그인을 사용하다보면, 

이미지가 서브도메인이나 다른 도메인일 경우, 보안상 사용이 불가한데,

내 도메인으로 인식해줘야할 필요가 있습니다.

(그레이스케일 효과 등)

 

예)

<img src="image.php?source=http://domain/name.jpg"> 

 

 

 

 

 

image.php

<?php // 이미지

include_once("./_dmshop.php");

if ($source) { $source = text($source); $source = preg_match("/^[a-zA-Z0-9_\-\.\:\/]+$/", $source) ? $source : ""; }

 

function image_header($source)

{

 

    if (!$source) {

        return false;

    }

 

    $file = explode('.', $source);

 

    $file = array_pop($file); // -> gif

 

    if (preg_match("/(jpg)/i", $file)) {

 

        $filetype = "image/jpeg";

 

    }

 

    else if (preg_match("/(jpeg)/i", $file)) {

 

        $filetype = "image/jpeg";

 

    }

 

    else if (preg_match("/(gif)/i", $file)) {

 

        $filetype = "image/gif";

 

    }

 

    else if (preg_match("/(png)/i", $file)) {

 

        $filetype = "image/png";

 

    } else {

 

        return false;

 

    }

 

    return $filetype;

 

}

 

if (!$source) {

    exit;

}

 

if (!preg_match("/(dmshopkorea\.com)/i", $source)) {

    exit;

}

 

$header = image_header($source);

 

if (!$header) {

    exit;

}

 

header("Content-Type: {$header}");

echo file_get_contents($source);

?>