Я пытаюсь загрузить / массовую загрузку с localhost (xampp) в мой ведро S3
.
Кажется, что работает около 6 элементов, после чего появляется сообщение об ошибке:
Ошибка cURL говорит о Failed sending network data.
от http://curl.haxx.se/libcurl/c/libcurl-errors.html
Fatal error: Uncaught exception 'cURL_Multi_Exception' with message 'cURL resource: Resource id #34; cURL error: SSL_write() returned SYSCALL, errno = 0 (cURL error code 55). See http://curl.haxx.se/libcurl/c/libcurl-errors.html for an explanation of error codes.' in D:\xampp\htdocs\path\to\my\files\sdk-1.5.14\lib\requestcore\requestcore.class.php on line 902
а также
cURL_Multi_Exception: cURL resource: Resource id #34; cURL error: SSL_write() returned SYSCALL, errno = 0 (cURL error code 55). See http://curl.haxx.se/libcurl/c/libcurl-errors.html for an explanation of error codes. in D:\xampp\htdocs\path\to\my\files\sdk-1.5.14\lib\requestcore\requestcore.class.php on line 902
heres my php. Он получает список изображений из каталога и из этого цикла, я хочу, чтобы пакет загружал эти элементы в S3
.
require_once('sdk-1.5.14/sdk.class.php'); $s3 = new AmazonS3(); //$s3->disable_ssl_verification(); //this didnt fix it $folder = "./../"; $handle = opendir($folder); # Making an array of files in a directory to upload to S3 while ($file = readdir($handle)) { $files[] = $file; } closedir($handle); foreach ($files as $file) { $path_parts = pathinfo($file); if(isset($path_parts['extension']) && $path_parts['extension'] != '') { // local path $fileTempName = "D:/xampp/htdocs/path/to/my/files/"; //batch $response = $s3->batch()->create_object('bucketname', "tempdirectory/" . $file, array( 'fileUpload' => fopen($fileTempName . $file, 'r'), 'acl' => AmazonS3::ACL_PUBLIC )); } } $s3->batch()->send();
update: после внесения изменений в congig.inc.php
теперь я получаю сообщения об ошибках:
Fatal error: Uncaught exception 'cURL_Multi_Exception' with message 'cURL resource: Resource id #149; cURL error: Failed connect to mybucket.s3.amazonaws.com:443; No error (cURL error code 7). See http://curl.haxx.se/libcurl/c/libcurl-errors.html for an explanation of error codes.' in D:\xampp\htdocs\sdk-1.5.14\lib\requestcore\requestcore.class.php on line 902
cURL_Multi_Exception: cURL resource: Resource id #149; cURL error: Failed connect to prayerbucket.s3.amazonaws.com:443; No error (cURL error code 7). See http://curl.haxx.se/libcurl/c/libcurl-errors.html for an explanation of error codes. in D:\xampp\htdocs\sdk-1.5.14\lib\requestcore\requestcore.class.php on line 902
Попробуйте установить лимит для партии:
$batch = new CFBatchRequest(2); // only two instance at once foreach ($files as $file) { $path_parts = pathinfo($file); if(isset($path_parts['extension']) && $path_parts['extension'] != '') { // local path $fileTempName = "D:/xampp/htdocs/path/to/my/files/"; // if batch, it have to return curl's resource $curl_handler = $s3->batch($batch)->create_object('bucketname', "tempdirectory/" . $file, array( 'fileUpload' => fopen($fileTempName . $file, 'r'), 'acl' => AmazonS3::ACL_PUBLIC )); } } // batch object send queue $batch->send();
Попробуйте установить «certificate_authority» в true в config.inc.php.