Бывает так, что нужно работать в php с библиотекой curl для обращения, например, к какому-либо API сервиса. И бывает очень неприятно, когда доступ к API оказывается заблокирован для вашего сервера по IP. Выпутаться из данной ситуации можно перенаправляя запросы сервера через прокси. Это можно делать через системные настройки, засылая ВСЕ запросы через прокси-сервер либо выполняя именно те запросы, которые вам требуются.
В принципе всё просто. У вас есть запрос:
$url = "http://www.example.com/API/v2.0/"; function get_url($url) { $ch = curl_init(); if($ch === false) { die('Failed to create curl object'); } $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $data = curl_exec($ch); curl_close($ch); return $data; } echo get_url($url);
Вам потребуется изменить запрос:
$url = "http://www.example.com/API/v2.0/"; function get_url($url) { $proxy_ip = 'your_proxy_ip:proxy_port'; //IP адрес сервера прокси и порт $loginpassw = 'login:password'; //логин и пароль для прокси $ch = curl_init(); if($ch === false) { die('Failed to create curl object'); } $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); //Указываем к какому прокси подключаемся и передаем логин-пароль curl_setopt($ch, CURLOPT_PROXY, $proxy_ip ); curl_setopt($ch, CURLOPT_PROXYUSERPWD, $loginpassw); //доступные значения для типа используемого прокси-сервера: CURLPROXY_HTTP (по умолчанию), CURLPROXY_SOCKS4, CURLPROXY_SOCKS5, CURLPROXY_SOCKS4A или CURLPROXY_SOCKS5_HOSTNAME. curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5); $data = curl_exec($ch); curl_close($ch); return $data; } echo get_url($url);
Из комментариев к коду, я думаю и так понятно что изменилось и какие значения следует использовать. Надеюсь у вас всё получится ;)
Реверс инжиниринг электроники и программного обеспечения — увлекательная и важная дисциплина, играющая ключевую роль в…
Рынок смартфонов не стоит на месте и каждый год пополняется новыми моделями. Компания Apple традиционно…
Запуск онлайн-бизнеса может показаться сложной задачей, но на самом деле этот процесс можно существенно упростить,…
Если Вы хотите продвинуть свой сайт в поисковых системах, одним из самых важных аспектов является…
Корейская компания Samsung зарекомендовала себя на потребительском рынке как производитель флагманов, так и бюджетных смартфонов.…
В то время как множество пользователей регистрируются в Инстаграм, другие ищут способы как удалить аккаунт…