Проблемы с curl в API геокешинга

Я пытаюсь получить доступ к пользовательской информации, используя сервис API http://geocaching.com/. Используя следующий скрипт, я получаю ошибки, указанные ниже:

Если я использую его "прямо из коробки" (на работающем сервере), я получаю следующее сообщение:

Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be         activated when safe_mode is enabled or an open_basedir is set in /home/mrmemeco/public_html/geo/src/Geocaching/OAuth/OAuth.php on line 329

Fatal error: Uncaught exception 'Exception' with message '28' in /home/mrmemeco/public_html/geo/src/Geocaching/OAuth/OAuth.php:334 Stack trace: #0 /home/mrmemeco/public_html/geo/src/Geocaching/OAuth/OAuth.php(206): Geocaching\OAuth\OAuth->curl_request('http://staging....') #1 /home/mrmemeco/public_html/geo/index.php(50): Geocaching\OAuth\OAuth->getRequestToken() #2 {main} thrown in /home/mrmemeco/public_html/geo/src/Geocaching/OAuth/OAuth.php on line 334

Если я использую его таким же образом, но на локальном хосте возвращается HTTP error: 0 и данные не возвращаются.

Я немного погуглил и проверил, что безопасный режим отключен, но у меня все еще не было радости.

Это определенно не мои ключи API, так как они отлично работают в живом демо

1 ответ

Решение

Вы получаете эту ошибку, потому что конфигурация вашего сервера не позволяет cUrl следовать местоположениям. Существует несколько способов решить эту проблему:

  • Если у вас есть доступ к корню вашего сервера, вы должны отредактировать файл php.ini и установить safe_mode = false
  • В противном случае вы можете создать .htaccess файл в корне вашего сайта и положить это внутри php_value safe_mode off или же...
  • Вы можете изменить значение safe_mode в вашем PHP-скрипте добавив эту строку на ini_set('safe_mode', false);

Я надеюсь, что это помогает

Другие вопросы по тегам