файл get contents работает на локальном, но не на сервере [дубликат]

Возможные Дубликаты:
функции file_get_contents() ошибка

работа над скриптом, который подключается к API Instagram для получения фотографий из определенного тега. Он отлично работает на локальном, но на сервере я получаю ошибки.

предупреждение: file_get_contents (): https: / / wrapper отключен в конфигурации сервера с помощью allow_url_fopen=0 in /storage/content/91/103391/instaboll.nu/public_html/instagram.php on line 19.

вот как выглядит строка 19:
$contents = file_get_contents("https://api.instagram.com/v1/tags/$tag/media/recent?client_id=$client_id");

какие идеи?

искали это и нашли некоторые сообщения, которые рекомендуют curl, но понятия не имеют, как это сделать.

4 ответов


Я решил это с помощью этого кода.

<?php
$url = "http://www.example.org/";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$contents = curl_exec($ch);
if (curl_errno($ch)) {
  echo curl_error($ch);
  echo "\n<br />";
  $contents = '';
} else {
  curl_close($ch);
}

if (!is_string($contents) || !strlen($contents)) {
echo "Failed to get contents.";
$contents = '';
}

echo $contents;
?>    

решение в сообщении об ошибке: set allow_url_fopen до 1 в вашем ini (используйте используйте ini_set в php-коде или поговорите со своим хостом).


вам придется включить allow_url_fopen из php.ini на вашем хосте или поговорите с вашими хостинг-провайдерами.

эта опция включает URL-адрес-известны фантики fopen, которая обеспечивает возможность доступа Объект URL, как файлы.


администратор сервера отключил эту функцию. Вам нужно попросить их включить его.