Я за корпоративным прокси / брандмауэром. Я хочу извлечь информацию с другого сайта и пытаюсь сделать это, используя php и curl.

Мой сценарий выглядит следующим образом:

===================== начало скрипта ================

$ url = "www.guptaed.com"; $ proxy_ip = "12.34.56.78"; // ip изменен с реального прокси-сервера компании $ proxy_port = "81"; $ proxy_user_pass = "my_user_name:my_password"; // пользователь и пароль изменены

$ ch = curl_init(); curl_setopt($ ch, CURLOPT_URL, $ url); curl_setopt($ ch, CURLOPT_FRESH_CONNECT, 1); curl_setopt($ ch, CURLOPT_TIMEOUT_MS, 5000); curl_setopt($ ch, CURLOPT_PROXYTYPE, 'HTTP'); curl_setopt($ ch, CURLOPT_PROXY, $ proxy_ip); curl_setopt($ ch, CURLOPT_PROXYPORT, $ proxy_port); curl_setopt($ ch, CURLOPT_PROXYUSERPWD, $ proxy_user_pass);

$ data = curl_exec($ ch); curl_close($ ч); echo $ data;

===================== конец скрипта ================

И когда я вызываю этот скрипт, на экране отображается следующее (через локально установленный сервер apache):

===================== начало вывода ================

Найденный

Документ был перемещен сюда.

1

===================== конец вывода ================

здесь в приведенном выше предложении есть ссылка с URL-адресом в виде: " http://www.guptaed.com/proxy.cgi?proxy.pac "

Любая помощь будет оценена.

Спасибо! Ashish

1 ответ1

0

Целевой URL-адрес возвратил код ответа 302 HTTP, используемый для перенаправления вас на другой URL-адрес. Вот почему вы получаете результат "Найдено" с другим URL.

Попробуйте настроить curl для следования перенаправлениям:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .