Прокси текшерүүсүнүн өз cURL параметрлери бар. Сайтка кирүүгө CURLOPT_USERPWD коюу прокси эсебин жөндөбөйт, CURLOPT_HTTPAUTH да прокси текшерүү ыкмасын тандабайт.

<?php
$user = 'proxy-user';
$password = getenv('PROXY_PASSWORD');
if ($password === false) {
    throw new RuntimeException('Set PROXY_PASSWORD');
}

$ch = curl_init('https://example.com/');
curl_setopt_array($ch, [
    CURLOPT_PROXY => 'http://203.0.113.10:8080',
    CURLOPT_NOPROXY => '',
    CURLOPT_PROXYUSERPWD =>
        rawurlencode($user) . ':' . rawurlencode($password),
    CURLOPT_PROXYAUTH => CURLAUTH_BASIC,
    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;

Документтик IPни алмаштырып, ошол проксиге берилген маалыматты колдонуңуз. Мисалда Basic атайлап тандалган; ар бир чекит талап кылат деп ойлобой, кызмат колдогон жана бекиткен ыкманы колдонуңуз.

Бириккен талаанын коддоо эрежеси бар

libcurl CURLOPT_PROXYUSERPWD колдонуучу аты менен сырсөздү URL-декод кыларын документтейт. Мисал ар бир бөлүктү бөлгүч менен кошордон мурда коддойт. Маалыматта чыныгы пайыз тизмеги же башка атайын белги болсо, бул маанилүү.

Өзүнчө прокси колдонуучу аты жана сырсөз параметрлери маанилерин түз кабыл алат:

curl_setopt($ch, CURLOPT_PROXYUSERNAME, $user);
curl_setopt($ch, CURLOPT_PROXYPASSWORD, $password);

Аларды суроону аткаруудан мурда башка маалымат формасы катары колдонуңуз. Бириккен прокси талаасынын декод эрежесин CURLOPT_USERPWDге автоматтык колдонбоңуз; libcurl айырманы документтейт.

Текшерүү баскычтарын бөлүңүз

CURLOPT_PROXYAUTH прокси текшерүүсүн, CURLOPT_HTTPAUTH максат менен HTTP текшерүүсүн тандайт. Экөө тең кирүүнү талап кылса, бир маалыматты эки жерге көчүрбөй ар бирине туура параметр бериңиз.

CURLAUTH_ANY макулдашууга уруксат берет жана ыкма тандалганча чакырык-жооп алмашуусун кошушу мүмкүн. Маалыматтын тууралыгын далилдебейт. Кошумча кол менен Proxy-Authorization баш сабын берүү китепкананын текшерүү ишине тоскоол болушу мүмкүн.

Проксиге ачык тексттүү байланыштагы Basic маалыматын сайттын кийинки TLS туннели коргобойт. Текшерилген кызматты колдонуу жолун тандаганда ошол транспортту өзүнчө текшериңиз.

Тектеш макалалар