2011-09-09 13 views
1

PHP 프레임 워크에서 작동하는 빠른 캐싱 시스템을 연구 중입니다. 기본적으로 모든 정적 페이지를 프레임 워크로로드 할 필요가 없으므로 CURL을 사용하려고했습니다. 그것은 매우 빠르게 작동 명령 행의 경우 :CLI cURL to PHP cURL

$ curl http://www.example.com/en/terms-of-use.html > web/cache/en/terms-of-use.html 

나의 현재 솔루션 컬, 개방과 파일 데이터를 받고있다/파일을 생성하고 있다는 점에서 모든 데이터를 넣어. curl에 익숙하지 않지만 CLI 버전이 매우 짧은 경우 더 빠른 방법이 있어야합니다.

+0

역방향 프록시를 구축하고 있습니까? – arnaud576875

+0

컬은 다른 브라우저에서 웹 페이지를 방문하는 것보다 빠르다는 것을 이해하지 못합니다. HTML로 파일을 정적으로로드하고 해당 파일을 표시하는 것에 대해 생각한다고 가정합니다. 빠른 속도로 컬을 사용해서는 안됩니다. –

+0

어쩌면 나는 그것을 틀리게 공식화했다. 그리고 역방향 프록시와 비슷합니다. @ arnaud576875가 말했습니다. 결과를 정적 HTML 페이지에 저장하고이를 사용자에게 제공합니다. 사용자를 위해로드 할 프레임 워크가 실제로 차이를 만들어야합니다. –

답변

0

더 빨라지는지 아직 잘 모르겠다. 벤치 마크를해야하지만 쓰기가 훨씬 짧다.

<?php 
    if(!copy('http://www.website.com/en/homepage.html', 'web/cache/en/homepage.html')) 
    { 
     // Notify someone 
    } 
?> 
1

당신은 하나의 2 가지 방법으로이 작업을 수행 할 수 있습니다

$page = system("curl http://www.example.com/en/terms-of-use.html"); 
    print "<pre>"; 
    print_r($page); 
    print "</pre>"; 

....

사용 PHP의 시스템/프로세스 함수 호출하거나 기본 컬의 PHP 라이브러리를 사용할 수 있습니다

<?php 
     $url = "http://www.example.com/en/terms-of-use.html"; 
     print $url; 
     $ch = curl_init($url); 
     if(!$ch) 
     { 
     $errstr = "Could not connect to server."; 
     } 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
     $page = curl_exec($ch); 
     print "<pre>"; 
     print_r($page); 
     print "</pre>"; 
    ?>