2016-08-30 12 views
0

PHP用Dropbox APIを使用していて、upload and download files from the dropboxという小さなアプリを開発しました。Dropbox API for PHPがローカルホストで動作していますが、サーバ上で動作していません

ローカルマシンで(WAMPを使用して)正常に動作していますが、サーバーにアップロードすると動作しません。ここで

は誤りである:ここでは

Fatal error: Uncaught exception 'Dropbox\Exception_NetworkIO' with message 'Error executing HTTP request: ' in /dropbox-sdk/lib/Dropbox/Curl.php:73

は、サーバー上の私のcURLの設定です:

cURL support: enabled 
cURL Information: 7.46.0 
Age: 3 
Features 
AsynchDNS: No 
Debug: No 
GSS-Negotiate: No 
IDN: Yes 
IPv6: Yes 
Largefile: Yes 
NTLM: Yes 
SPNEGO: No 
SSL: Yes 
SSPI: No 
krb4: No 
libz: Yes 
CharConv: No 
Protocols: dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtsp, scp, sftp, smb, smbs, smtp, smtps, telnet, tftp 
Host: x86_64-pc-linux-gnu 
SSL Version: OpenSSL/1.0.2e 
ZLib Version: 1.2.3.4 
libSSH Version: libssh2/1.2.6 

どのように私はこの問題を解決することができますか?

編集:後 は私のコードです:

<?php 
// Include the Dropbox SDK libraries 
require_once "dropbox-sdk/lib/Dropbox/autoload.php"; 
use \Dropbox as dbx; 

// Get access token from dropbox 
$appInfo = dbx\AppInfo::loadFromJsonFile("dropbox-sdk/config.json"); 
$webAuth = new dbx\WebAuthNoRedirect($appInfo, "PHP-Example/1.0"); 

$authorizeUrl = $webAuth->start(); 

echo "1. Go to: " . $authorizeUrl . PHP_EOL; 
echo "2. Click \"Allow\" (you might have to log in first)." . PHP_EOL; 
echo "3. Copy the authorization code." . PHP_EOL; 
$authCode = \trim(\readline("Enter the authorization code here: ")); 

list($accessToken, $dropboxUserId) = $webAuth->finish($authCode); 
print "Access Token: " . $accessToken . PHP_EOL; 

$dbxClient = new dbx\Client($accessToken, "PHP-Example/1.0"); 

// Get account info of the user 
$accountInfo = $dbxClient->getAccountInfo(); 
print_r($accountInfo); 
?> 

編集:ここではスタックトレースです:

Fatal error: Uncaught exception 'Dropbox\Exception_NetworkIO' with message 'Error executing HTTP request: ' in /dropbox-sdk/lib/Dropbox/Curl.php:73 
Stack trace: 
#0 /dropbox-sdk/lib/Dropbox/RequestUtil.php(200): Dropbox\Curl->exec() 
#1 /dropbox-sdk/lib/Dropbox/WebAuthBase.php(41): Dropbox\RequestUtil::doPostWithSpecificAuth('PHP-Example/1.0', 'Basic d25qZDV0c...', NULL, 'api.dropbox.com', '1/oauth2/token', Array) 
#2 /dropbox-sdk/lib/Dropbox/WebAuthNoRedirect.php(80): Dropbox\WebAuthBase->_finish('nNHnBxvAE8qAAAA...', NULL) 
#3 /getAccessTokenForDropbox.php(21): Dropbox\WebAuthNoRedirect->finish('nNHnBxvAE8qAAAA...') 
#4 {main} thrown in /dropbox-sdk/lib/Dropbox/Curl.php on line 73 
+0

私たちはそれを見ることができるようにコードを提供してください –

+0

こんにちはマヌエル、私は質問を編集し、最後にコードを追加しました。 – Purab

+0

ありがとうございます、これはあなたを助けるかもしれません:https://www.dropboxforum.com/hc/en-us/community/posts/201823725-Fatal-error-Uncaught-exception-Dropbox-Exception-NetworkIO-with-message-Error HTTP-request-error-14094410-SSL-routines-SSL3-READ-BYTES- –

答えて

0


問題は、DropboxのAPIによって送信されたカール要求していました。 Dropboxは実行時に決定されたIP(たとえば108.160.173.164など)にcurl要求を送信するため、要求は自分のサーバーによってブロックされていました。
このエラーを解決するのに役立つ108.160.xxx.xxxへのすべての接続をホワイトリストに示します。

関連する問題