In proxy-IP brûke mei PHP cURL
Stel in HTTP- of SOCKS-proxy yn op in PHP cURL-handle, hâld de webside-URL apart en ûnderskied transportflaters fan HTTP-antwurden.
Hâld de webside yn curl_init() en stel de tuskenpartij yn op dat handle. PHP hat syn cURL-útwreiding nedich; in wurkjend curl-programma yn de terminal bewijst net dat de útwreiding beskikber is.
<?php
$ch = curl_init('https://example.com/');
curl_setopt_array($ch, [
CURLOPT_PROXY => 'http://203.0.113.10:8080',
CURLOPT_PROXYTYPE => CURLPROXY_HTTP,
CURLOPT_NOPROXY => '',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_TIMEOUT => 15,
]);
$body = curl_exec($ch);
if ($body === false) {
throw new RuntimeException(curl_error($ch), curl_errno($ch));
}
echo curl_getinfo($ch, CURLINFO_RESPONSE_CODE), PHP_EOL;
echo $body;Ferfang de dokumintaasje-IP en -poarte troch dyn HTTP-proxy of in fermelding út de list mei HTTP-proxy’s. CURLOPT_NOPROXY wisket omgeanregels foar dizze test; CURLOPT_RETURNTRANSFER jout de ynhâld werom ynstee fan dy nei de browser te stjoeren. De ferbiningslimyt beheint de opbou en de totale tiidlimyt de cURL-hanneling.
Ferfang foar in SOCKS5-einpunt de HTTP-proxyopsjes foar curl_exec():
curl_setopt($ch, CURLOPT_PROXY, '203.0.113.10:1080');
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME);CURLPROXY_SOCKS5_HOSTNAME lit de DNS fan de bestimming oan de SOCKS-server oer. Brûk it opjûne protokol; poarte 1080 allinnich identifisearret it net. Gjin fan beide proxykarren freget om de sertifikaatkontrôle fan de webside út te setten.
Test $body === false strikt. Lege ynhâld kin in slagge oerdracht wêze, wylst in tunnel mislearje kin foardat der in webside-antwurd is. Oarsom kin net-lege ynhâld mei 403, 404 of 429 komme. Lês CURLINFO_RESPONSE_CODE neist it cURL-flaterresultaat om te bepalen oft it foltôge fersyk dyn taak foldocht.