Могу ли я получать информацию с внешнего веб-сайта, когда я нахожусь в интрасети, используя функцию php file_get_contents? - PullRequest
0 голосов
/ 06 октября 2011

Я пытаюсь получить информацию о внешнем веб-сайте из внутренней сети, используя file_get_contents и curl, но, к сожалению, мне не удается получить данные, я попросил системного администратора предоставить мне доступ к этому конкретному сайту, который является facebook.comи когда я вставляю URL-адрес непосредственно в адресную строку, я могу открыть веб-страницу, но теперь, когда я хочу получить к ней доступ через свою интрасеть, она выдает ошибку

An error occured while fetching the URI. Please retry.

и мой код

 $url = 'http://www.facebook.com';
 //curl script to get content of given url
 $ch = curl_init();
 // set the target url
 curl_setopt($ch, CURLOPT_URL,$url);
 // request as if Firefox
 curl_setopt($ch, CURLOPT_HTTPHEADER, Array("User-Agent: Mozilla/5.0 (Windows; U;   Windows NT 5.1; en-US; rv:1.8.1.15) Gecko/20080623 Firefox/2.0.0.15") ); 
 curl_setopt($ch, CURLOPT_NOBODY, false);
 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 $result= curl_exec ($ch); 
 curl_close ($ch);

и Facebook был заблокирован на нашем брандмауэре, но я подумал, что, поскольку я могу получить доступ напрямую из браузера, я должен иметь к нему доступ, но кажется, что брандмауэр не видит запроскак отправленный мной, может ли запрос быть отправлен по IP-адресу интрасети?это вообще возможно?

1 Ответ

0 голосов
/ 06 октября 2011

Я попросил системного администратора предоставить мне доступ к этому конкретному сайту

«Я» или «Мой сценарий»?

когда я хочу получить к нему доступ через свою интранет

что это значит - "через мой интранет"?
Вы уже внутри интрасети, даже если «вставить URL прямо в адресную строку»?

В любом случае, вы все равно должны спросить своего системного администратора, а не людей о stackoverflow. Мы не контролируем ваш межсетевой экран

...