file_get_contents () ничего не возвращает - PullRequest
1 голос
/ 01 марта 2012

Я пытаюсь получить данные с веб-сайта Национального архива США, используя функцию PHP file_get_contents(), как я делал в прошлом для создания подобных скриптов. Однако по какой-то причине в этом случае функция не получает никакого содержимого файла.

Я должен признаться, что у меня не так много опыта в такой работе. Может ли кто-нибудь указать, почему файл может быть возвращен неправильно, даже если файл отображается нормально, когда я вручную набираю URL в адресной строке. Вот исходный код (или минимальная версия, которая ничего не выводит):

   $asn = $_REQUEST['asn'];
$format = $_REQUEST['output'];
  $data = array();

if(!empty($asn))
{
    $url_to_get = 'http://aad.archives.gov/aad/print-record-detail.jsp?dt=893&mtch=1&tf=F&q=31371273&bc=sl,fd&rpp=10&pg=1&rid=2546302';
    $content = file_get_contents($url_to_get);
    echo $content;
}

И URL, к которому мы пытаемся получить доступ>> 1007 *http://aad.archives.gov/aad/print-record-detail.jsp?dt=893&mtch=1&tf=F&q=31371273&bc=sl,fd&rpp=10&pg=1&rid=2546302

Возможно ли, что запуск сценария на localhost может вызывать проблему здесь?

1 Ответ

8 голосов
/ 01 марта 2012

В случае сбоя обязательно будет предупреждение. Этот конкретный URL хочет, чтобы PHP был настроен с поддержкой SSL, потому что при работе на складе он дает мне:

не удалось открыть поток: не удалось найти транспортный сокет "ssl" - сделал вы забыли включить его при настройке PHP?

Это говорит о том, что мне нужно включить расширение openssl для PHP.

...