먼저 SimplePie가 기본 cURL 페처를 사용하는지 확인합니다. PHP의 cURL 확장이 있어야 하고 애플리케이션이 fsockopen을 강제해서는 안 됩니다. 소켓 폴백은 cURL 옵션을 읽지 않습니다.

이 기본 경로에서는 init 전에 설정합니다.

$feed = new \SimplePie\SimplePie();
$feed->set_feed_url('https://feeds.example/news.xml');
$feed->set_curl_options([
    CURLOPT_PROXY => 'http://proxy.example:8080',
]);
$feed->init();

set_curl_options는 이 값들을 페처에 전달하므로 설치된 File.php를 편집할 필요가 없습니다. HTTP 프록시 목록의 HTTP 항목은 해당 경로가 허용되고 프록시 자격 증명이 구성되지 않은 경우 공개 피드에 예시 프록시 URL을 제공할 수 있습니다. 인증에는 허용되는 CURLOPT_PROXYAUTH 방식을 선택하고 CURLOPT_PROXYUSERNAME/CURLOPT_PROXYPASSWORD를 제공합니다. CURLOPT_HTTPAUTH는 대신 대상 서버에 사용됩니다.

set_http_client로 주입한 HTTP 클라이언트는 자체 인터페이스로 프록시를 설정합니다. 기본 페처 옵션으로는 다른 전송을 구성할 수 없습니다. 기본 cURL 인증 경로는 PHP cURL의 프록시 계정 옵션을 참조하십시오.

경로를 확인할 때 새로 가져온 것과 캐시된 피드를 구분합니다. 기존 항목이 표시된다고 해서 새 다운로드가 변경된 프록시를 사용했다는 증거는 아닙니다.

관련 글