Bestätigen Sie zuerst, dass SimplePie seinen standardmäßigen cURL-Abrufer verwendet: Die cURL-Erweiterung von PHP muss verfügbar sein, und die Anwendung darf fsockopen nicht erzwingen. Der Socket-Fallback liest keine cURL-Optionen.

Für diesen Standardpfad konfigurieren Sie vor 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 reicht diese Werte an den Abrufer weiter, sodass keine Bearbeitung der installierten File.php nötig ist. Ein HTTP-Eintrag aus der HTTP-Proxy-Liste kann die Beispiel-Proxy-URL für einen öffentlichen Feed liefern, wenn dieser Weg erlaubt ist und keine Proxy-Anmeldedaten konfiguriert sind. Wählen Sie für die Authentifizierung die akzeptierte CURLOPT_PROXYAUTH-Methode und geben Sie CURLOPT_PROXYUSERNAME/CURLOPT_PROXYPASSWORD an. CURLOPT_HTTPAUTH dient stattdessen dem Ziel.

Bei einem mit set_http_client eingeschleusten HTTP-Client stellen Sie den Proxy über dessen eigene Schnittstelle ein. Optionen des Standard-Abrufers können keinen anderen Transport konfigurieren. Den standardmäßigen cURL-Authentifizierungspfad finden Sie unter Proxy-Kontooptionen von PHP cURL.

Unterscheiden Sie bei der Prüfung der Route einen frischen Abruf von einem zwischengespeicherten Feed. Die Anzeige vorhandener Einträge belegt nicht, dass ein neuer Download den geänderten Proxy verwendet hat.

Ähnliche Artikel