2014-09-18 3 views
0

웹 응용 프로그램에 google 가입을 사용하고 있습니다. 내 서버에서 성공적으로 Google에 가입했습니다. 하지만 내 응용 프로그램을 다른 서버로 옮기면 Google에 가입 ​​코드가 포함 된 페이지가 작동하지 않습니다. 해당 페이지를로드하면 빈 페이지가 나타납니다. 정확히 무슨 일이 있었는지 이해할 수 없었습니다. 또한 코드에 구문 오류가 없습니다. 여기 Google 가입 코드 작동하지 않습니다.

내 코드입니다 : 첫 번째 단락 표시 내부

내가이 페이지를 실행
<html> 
<p>Google</p> 
<?php 
ob_start(); 
session_start(); 
include("db.php"); 
require_once 'google-login-api/src/Google_Client.php'; 
require_once 'google-login-api/src/contrib/Google_Oauth2Service.php'; 
$google_client_id  = 'client id'; //my client id 
$google_client_secret = 'client secret'; //my client secret 
$google_redirect_url = 'Redirect url'; // my redirect url 
$gClient = new Google_Client(); 
$gClient->setClientId($google_client_id); 
$gClient->setClientSecret($google_client_secret); 
$gClient->setRedirectUri($google_redirect_url); 
$google_oauthV2 = new Google_Oauth2Service($gClient); 

if (isset($_REQUEST['reset'])) 
{ 
    unset($_SESSION['token']); 
    $gClient->revokeToken(); 
    header('Location: ' . filter_var($google_redirect_url, FILTER_SANITIZE_URL)); //redirect user back to page 
} 


if (isset($_GET['code'])) 
{ 
$gClient->authenticate($_GET['code']); 
$_SESSION['token'] = $gClient->getAccessToken(); 
header('Location: ' . filter_var($google_redirect_url, FILTER_SANITIZE_URL)); 
return; 
} 
if (isset($_SESSION['token'])) 
{ 
$gClient->setAccessToken($_SESSION['token']); 
} 
if ($gClient->getAccessToken()) 
{ 
    $user     = $google_oauthV2->userinfo->get(); 
    $user_id    = $user['id']; 
    $user_name   = filter_var($user['name'], FILTER_SANITIZE_SPECIAL_CHARS); 
    $email    = filter_var($user['email'], FILTER_SANITIZE_EMAIL); 
    $profile_url   = filter_var($user['link'], FILTER_VALIDATE_URL); 
    $profile_image_url = filter_var($user['picture'], FILTER_VALIDATE_URL); 
    $personMarkup   = "$email<div><img src='$profile_image_url?sz=50'></div>"; 
    $_SESSION['token'] = $gClient->getAccessToken(); 
} 
else 
{ 
$authUrl = $gClient->createAuthUrl(); 
} 
?> 
<p>Google One</p> 
</html> 

, 텍스트 만 구글입니다

는 사람이 찾아 도와 줄 수 뭐죠과 실제 문제를 내 암호..??

+0

은 오류 로그를 확인 있나요? –

+0

예 .. 오류 로그를 확인했습니다. 로그에서이 오류가 발견되었습니다. ** PHP 치명적 오류 : 'var/www/developer/google-login-api/src/Google_Client.php '에서'Google PHP API 클라이언트에 CURL PHP 확장 프로그램이 필요합니다. '라는 메시지와 함께'예외 '예외가 잡히지 않았습니다. : 21 \ n 스택 추적 : \ n # 0 /var/www/developer/indextest.php(6) : require_once() \ n/var/www/developer/google-login-api에 던져진 {메인} \ n /src/Google_Client.php on line 21 ** – Aishwaryas

답변

-1

문제는 오류 메시지에 명시되어

당신은 컬 서버에 설치되어 있는지 확인해야하고,이 경우, 당신이 그 컬이 알 수 있도록 PHP를 다시 컴파일해야

Google PHP API Client requires the CURL PHP extension

그곳에.

현재 사용중인 서버의 종류와 액세스 권한을 알지 못하면 조치 방법을 조언하는 것이 거의 불가능합니다. 다음은 몇 가지 일반적인 지침은하지만, 다음과 같습니다

Instructions for curl installation and compiling php with curl support

Using phpinfo to check your system setup

관련 문제