@yischyk

Как получить данные методом file_get_contents чужого сайта с другого ip?

Есть допустим скрипт
$file = file_get_contents('https://site.com');
И этот сайт лимитирует число запросов к нему по ip. Как это обойти? Т.е. как, например, запросить эту страницу с другого ip, а не айпи виртуального хостинга.
  • Вопрос задан
  • 412 просмотров
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Через выбранный internal-интерфейс
<?php
$opts = array(
    'socket' => array(
        'bindto' => '10.10.1.1:0',
    )
);

$context = stream_context_create($opts);
$file = file_get_contents("https://site.com/", false, $context);


http-прокси с авторизацией
<?php
$auth = base64_encode('LOGIN:PASSWORD');

$aContext = array(
    'http' => array(
        'proxy' => 'tcp://192.168.0.2:3128',
        'request_fulluri' => true,
        'header' => "Proxy-Authorization: Basic $auth",
    ),
);
$cxContext = stream_context_create($aContext);

$sFile = file_get_contents("http://www.google.com", False, $cxContext);

echo $sFile;


Материалы для изучения
https://www.php.net/manual/en/context.php
https://www.php.net/manual/en/ref.stream.php
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Попросить владельцев другого сайта по-человечески, или не парсить так часто.
Ну то есть вести себя в сети как человек, а не как голодная обезьяна.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы