카카오 로그인 로컬 서버에서는 정상적인데 REAL 서버에서는 정보를 가져오지 못합니다

문의 시, 사용하시는 개발환경과 디벨로퍼스 앱ID를 알려주세요.


개발 환경 : 리눅스, php
앱 ID : 119222

Redirect URI :
http://localhost/ooooo/oauth/callback.php
위 페이지에서는 정상적으로 잘 처리 됩니다.
실제 서비스에서는 사용자 정보를 가져오지 못합니다.
https://oooo.com/oauth/callback.php

로컬에서 피드백 :slight_smile:
TIME = 24-02-01 10:55:56
FUNC =
line = 176
kakao oauth/token : {“access_token”:“Edt4krK13d0H-qVvw9xzazQTFpYzUyfoxjMKPXSYAAABjWJhPgf6Fwx8Dt1GgQ”,“token_type”:“bearer”,“refresh_token”:“EIE44mmsPVUw9XjIzfMLJZy9DDcRSDotVyIKPXSYAAABjWJhPgP6Fwx8Dt1GgQ”,“expires_in”:21599,“scope”:“birthyear name phone_number”,“refresh_token_expires_in”:5183999}

TIME = 24-02-01 10:55:56
FUNC =
line = 204
kakao v2/user/me : Array
(
[id] => #카카오ID
[connected_at] => 2024-01-31T08:39:24Z
[kakao_account] => Array
(
[name_needs_agreement] =>
[name] => #성명
[has_phone_number] => 1
[phone_number_needs_agreement] =>
[phone_number] => #휴대폰번호
[has_birthyear] => 1
[birthyear_needs_agreement] =>
[birthyear] => #년도
)

)

실제 서비스에서 리턴값
TIME = 24-02-01 10:30:32
FUNC =
line = 176
kakao oauth/token : {“access_token”:“bynbX6tRz731SiImn9ye7aQXEog1xviXloYKKwyoAAABjWJJ_GX6Fwx8Dt1GgQ”,“token_type”:“bearer”,“refresh_token”:“Pp28gUXdsH6Yw8Dh1F_0iwE75CYj51gbTE0KKwyoAAABjWJJ_GD6Fwx8Dt1GgQ”,“expires_in”:21599,“scope”:“birthyear name phone_number”,“refresh_token_expires_in”:5183999}

TIME = 24-02-01 10:31:02
FUNC =
line = 204
kakao v2/user/me : 502

실 서비스에서는 response => 502 값을 리턴 받습니다.

확인 요청 드립니다.

감사 합니다.

v2/user/me 에서는 502를 반환하지 않습니다.
응답받는 에러 메시지 Body 기재 부탁드려요.

안녕하세요.

로컬에서는

TIME = 24-02-01 14:23:53
FILE = \oauth\callback.php
FUNC =
line = 88
code : kakao : 9wzjC48_CWVDlagoKcq8r1_laNLZZpabsViuOjoj_21UOe1wCqjS2xelAEgKKiWOAAABjWMfoA1ONYg–5I0Sw

TIME = 24-02-01 14:23:53
FILE = \oauth\callback.php
FUNC =
line = 176
kakao oauth/token : {“access_token”:“MyxbJn3C_ZrhuyWWmKmu0STyJm_YD6-tkagKKwzUAAABjWMfoID6Fwx8Dt1GgQ”,“token_type”:“bearer”,“refresh_token”:“SYBTRCE3uti4M77JBEzflTySfJvUC85RtEQKKwzUAAABjWMfoH36Fwx8Dt1GgQ”,“expires_in”:21599,“scope”:“birthyear name phone_number”,“refresh_token_expires_in”:5183999}

TIME = 24-02-01 14:23:53
FILE = \oauth\callback.php
FUNC =
line = 189
kakao v2/user/me response : {“id”:#아이디,“connected_at”:“2024-01-31T08:39:24Z”,“kakao_account”:{“name_needs_agreement”:false,“name”:“#성명”,“has_phone_number”:true,“phone_number_needs_agreement”:false,“phone_number”:“#폰번호”,“has_birthyear”:true,“birthyear_needs_agreement”:false,“birthyear”:“#년도”}}

TIME = 24-02-01 14:23:53
FILE = \oauth\callback.php
FUNC =
line = 205
kakao v2/user/me : Array
(
[id] => #아이디
[connected_at] => 2024-01-31T08:39:24Z
[kakao_account] => Array
(
[name_needs_agreement] =>
[name] => #성명
[has_phone_number] => 1
[phone_number_needs_agreement] =>
[phone_number] => #전화번호
[has_birthyear] => 1
[birthyear_needs_agreement] =>
[birthyear] => #년도
)

)

실제 서비스 :

TIME = 24-02-01 14:25:06
FILE =/oauth/callback.php
FUNC =
line = 88
code : kakao : LlXBcL3WW3iWwPM7iU_AsmS2quLrh8h5zzZ-ggNtNxbXonYRTzQRyJKVBgQKPXNNAAABjWMgu-XUNEQ5evY1pg

TIME = 24-02-01 14:25:06
FILE = /oauth/callback.php
FUNC =
line = 176
kakao oauth/token : {“access_token”:“O40QJ1Tcjinb1Wv5XZllX0zhSCt_H0SNXqQKPXPsAAABjWMgvE36Fwx8Dt1GgQ”,“token_type”:“bearer”,“refresh_token”:“evOjor7AUtnmbbIAWLpE40ayFX_Msc8lMXkKPXPsAAABjWMgvEj6Fwx8Dt1GgQ”,“expires_in”:21599,“scope”:“birthyear name phone_number”,“refresh_token_expires_in”:5183999}

TIME = 24-02-01 14:25:36
FILE =/oauth/callback.php
FUNC =
line = 189
kakao v2/user/me response : 502

TIME = 24-02-01 14:25:36
FILE =/oauth/callback.php
FUNC =
line = 205
kakao v2/user/me : 502

실제 서비스에서는 토큰을 요청 하고 : TIME = 24-02-01 14:25:06
리턴 받은 시간 TIME = 24-02-01 14:25:36 약 30초 정도가 소요되며
kakao v2/user/me response : 502
로 리턴 받는 상황입니다.
해당 로그는 아래 소스에 의해 표현 됩니다.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, ‘https://kapi.kakao.com/v2/user/me’);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSLVERSION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer ’ . $_SESSION[‘kakao_access_token’][‘access_token’]));
$response = curl_exec($ch);
curl_close($ch);
trace("kakao v2/user/me response : " . $response,LINE, FUNCTION,FILE);

확인 요청 드립니다.
감사 합니다.

해결 하였습니다.

로컬에서는
curl_setopt($ch, CURLOPT_URL, ‘https://kapi.kakao.com/v2/user/me’);
curl_setopt($ch, CURLOPT_POST, TRUE);
POST 도 가능 한데
실제 HTTPS 서비스에서는 GET 으로 해야 되네요
감사 합니다.

네, GET으로 요청하셔도 무방합니다.
아마도 아래 내용일 것 같네요. 참고 부탁드려요.

apache 2.4.5X 버전에서 PHP Post 응답대기 현상