CURLOPT_PROXYPORT задаёт номер порта. Он не определяет хост прокси, не выбирает протокол и не создаёт слушатель на локальной машине.

Новую конфигурацию PHP cURL проще читать, когда вся конечная точка собрана в одном месте:

curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:3128');

Документация libcurl не рекомендует отдельную опцию порта. Существующий код всё ещё может использовать её с хостом без встроенного порта:

curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example');
curl_setopt($handle, CURLOPT_PROXYPORT, 3128);

Порт, явно указанный в строке прокси, имеет приоритет над отдельной опцией. Не поддерживайте два противоречащих друг другу числа.

Если во фрагменте встречается только CURLOPT_PROXYPORT, проверьте остальную конфигурацию дескриптора и применимое окружение. Сам фрагмент не показывает, какой хост прокси, если он вообще есть, будет использовать libcurl.

Порт 3128 — привычный выбор при развёртывании, а не определитель протокола. Используйте настоящий протокол и порт слушателя. Для публичного маршрута HTTP список HTTP-прокси даёт кандидатов с адресом и портом, которые следует держать вместе в URL прокси. Прокси, доступный на другом порту, не нужно переносить только ради соответствия примеру.

Похожие статьи