Неустранимая ошибка PHP: необработанное исключение «Google_IO_Exception» с сообщением «Не удалось разрешить хост» account.google.com »

Я использовал Google API для сервиса Google Analytics. Первые 3 дня после этой реализации она работала нормально, но с 30 апреля 2015 года. Внезапно возникла проблема со следующей ошибкой. Я выполнил эту программу php через доступ к веб-странице с помощью Apache cron. Когда я захожу на страницу, возвращается ошибка 500 и

Журнал ошибок PHP;

Неустранимая ошибка PHP: необработанное исключение ‘Google_IO_Exception’ с
сообщение «Не удалось разрешить хост» account.google.com «в
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/src/Google/IO/Curl.php:115\nStack
след: \ п # 0
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/src/Google/IO/Abstract.php(136):
Google_IO_Curl-> ExecuteRequest (Object (Google_Http_Request)) \ п # 1
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/src/Google/Auth/OAuth2.php(336):
Google_IO_Abstract-> makeRequest (Object (Google_Http_Request)) \ п # 2
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/src/Google/Auth/OAuth2.php(308):
Google_Auth_OAuth2-> refreshTokenRequest (Array) \ п # 3
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/get-pageview.php(52):
Google_Auth_OAuth2-> refreshTokenWithAssertion (Object (Google_Auth_AssertionCredentials)) \ п # 4
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/get-pageview.ph
в
/var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/src/Google/IO/Curl.php
по линии 115

Мой код для подключения Google API;

require_once dirname(__FILE__) . '/src/Google/autoload.php';
$client_email = '[email protected]';
$view_id = "xxx";
$private_key = @file_get_contents(dirname(__FILE__) . '/xxx.p12');
$client = new Google_Client();
$scopes = array("https://www.googleapis.com/auth/analytics.readonly");
if(isset($_SESSION["service_token"])){
$client->setAccessToken($_SESSION["service_token"]);
}

$credentials = new Google_Auth_AssertionCredentials($client_email,$scopes,$private_key);
$client->setAssertionCredentials($credentials);

if($client->getAuth()->isAccessTokenExpired()){
$client->getAuth()->refreshTokenWithAssertion($credentials);
}
$_SESSION["service_token"] = $client->getAccessToken();

...

я использовал эта библиотека. Я обновил это до последнего в 3 дня назад.

Я обнаружил похожие сообщения об ошибках при переполнении стека, но большинство из них вызвано проблемами с подключением к серверу «accounts.google.com», но мой сервер мог подключить его раньше. Также я проверил хост / nslookup тоже;

# nslookup accounts.google.com
Server:         210.157.3.4
Address:        210.157.3.4#53

Non-authoritative answer:
accounts.google.com     canonical name = accounts.l.google.com.
Name:   accounts.l.google.com
Address: 216.58.220.173

# host accounts.google.com
accounts.google.com is an alias for accounts.l.google.com.
accounts.l.google.com has address 216.58.220.173
accounts.l.google.com has IPv6 address 2404:6800:4004:812::200d

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

Тоже сомневаюсь проблема токена тоже, но в моем случае только 2 или 3 машины подключены API, так что это не должно быть пределом токена.

Я также проверил мой сервер нтп но это работает правильно на моем сервере.

Я надеюсь, что у кого-то были такие же проблемы, знают, как это исправить. Спасибо всегда

—дополнение 20150505—

Вчера я пытался не через веб-страницу, а через командный скрипт для доступа к файлу php, тогда api работал. До сих пор не понимаю, почему внезапно произошел сбой доступа к веб-странице, но сама проблема, похоже, решена.

Хрон перед

wget http://example.com/analytics-api?f=1

Крон после

php /var/www/html/components/com_jumi/files/analytics/google-api-php-client-master/get-pageview.php -f1

2

Решение

У меня была такая же проблема сегодня, так

Я просто отключаю брандмауэр, и он работает для меня

Я использую avg антивирус

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]