2013-12-13 2 views
1

이상한 문제가 있습니다. Mixi라는 소셜 플랫폼 용 OAuth API에서 인증 토큰을 가져 오는 간단한 코드가 있습니다. 이후, 일단 권한이 부여되면 PHP로 간단한 컬을 사용하여 사용자의 프로파일 데이터 등을 가져옵니다. 하지만 문제는 PHP를 사용하는 일반적인 호스팅에서 완벽하게 작동한다는 것입니다. GoDaddy 등에서.하지만 내 프로젝트는 아마 Amazon EC2 Windows 기반 서버에 있어야하는데, 나는이 서버에 익숙하지 않다. 하지만 PHP가 제대로 작동하고 응용 프로그램 페이지가 제대로 제공되도록 보장했습니다.그래프 API 토큰이 EC2에서 작동하지 않습니다.

다른 호스팅 서버에서 코드가 올바르게 작동한다는 사실은 코드가 정확한 것입니다. 그러나, 아마존에서; 첫 번째 컬 담당자가 인증 토큰을받지 못했습니다. API 소비자 비밀을 여러 번 다시 생성하려고했습니다.

같은 시간대와 일치하도록 Windows 시스템 시간을 재설정했습니다. 관련성이 있다고 생각되는 추가 정보는 API URL이 모두 https ... 모든 문제를 일으키는 지 확실하지 않습니다. 소셜 네트워크의 API에서 cURL을 사용하여 올바르게 가져올 수 있으려면 Amazon EC2 Windows 서버에서 특별한 것을 설정해야합니까?

내 응용 프로그램의 정확한 코드가 cPanel을 통해 액세스하는 2 개의 다른 일반 호스팅 제공 업체에서 작동하며 토큰 및 필수 프로필 데이터를 얻고 있기 때문에 추가 정보를 제공하려면 알려주십시오. 혼란 스럽습니다. 거기 JSON 응답.

감사합니다.

는 별도의 인증서 파일을 포함 할 필요가 아마존 EC2에 컬을 통해 HTTPS를 실행하려면 :

답변

0

긴 싸움 후, 여기에 솔루션입니다. 이것은 여기에서 다운로드 할 수 있습니다

http://curl.haxx.se/docs/caextract.html 

이 후 컬을 호출하기 전에 PHP 코드에서이를 추가하는 방법은 다음과 같습니다 $의 채널은 컬 핸들러 (curl_init의 반환 값은()이다

curl_setopt($ch, CURLOPT_CAINFO, 'cacert.pem'); 

요구). EC2에서 API에서 https 가져 오기를 실행할 수 없다는 동일한 문제에 직면 한 모든 사용자에게 도움이되기를 바랍니다. 아직 확실하지 않은 이유는 왜 Godaddy 나 다른 일반 호스팅에서 동일한 코드가 작동하는지, 아마도이 인증서가 자체적으로 포함되어 있으므로 cURL에서 https를 직접 호출 할 수 있습니다.

관련 문제