PHP & Others

get_url_fsockopen() "allow_url_fopen=OFF" 下 include 대신

페이지 정보

본문

 
글쓴이:낭망백수  get_url_fsockopen() "allow_url_fopen=OFF" 下 include 대신 조회수:104


낭망백수



따끈한 태클 환영입니다.

    function get_url_fsockopen( $url ) {
        $URL_parsed = parse_url($url);

        $host = $URL_parsed["host"];
        $port = $URL_parsed["port"];
        if ($port==0)
            $port = 80;

        $path = $URL_parsed["path"];
        if ($URL_parsed["query"] != "")
            $path .= "?".$URL_parsed["query"];

        $out = "GET $path HTTP/1.0\\r\\nHost: $host\\r\\n\\r\\n";

        $fp = fsockopen($host, $port, $errno, $errstr, 30);
        if (!$fp) {
          echo "$errstr ($errno)<br>\\n";
        } else {
            fputs($fp, $out);
            $body = false;
            while (!feof($fp)) {
                $s = fgets($fp, 128);
                if ( $body )
                    $in .= $s;
                if ( $s == "\\r\\n" )
                    $body = true;
            }

            fclose($fp);
            echo $in;
        }
    }

p.s.;
모두 PHP 메뉴얼에 등장하는 내용들입니다.

꾸벅~!

 
 
 ----------------------------------------------------------
보안상의 이유로 allow_url_fopen 을 Off 로 설정하게 되는데,
이때 이전 소스들의
include $url;
을 간단히 대체하기 위해 작성하였습니다.


꼭 url include의 대체용보다도 여러가지로 활용 될 수 있겠죠~

단순히 어떤 웹페이지(html, xml) 긁어와서 원하는 형태로 파싱할때도 활용되고..

타도메인에 내용을 iframe이나 frame이나 새창에서.. 띄울때 엑세스 불가 안뜨게 접근할때도 활용 되겠고요,

관련자료

등록된 댓글이 없습니다.
Today's proverb
우리는 이 세상에서 위대한 일을 할 수는 없다. 단지 위대한 사랑을 갖고 작은 일들을 할 수 있을 뿐이다. (테레사)