2014-01-06 2 views
4

내가 줄이기는하지만 정확한 코드는 다음과 같습니다.Amazon S3 - deleteObjects() - "guzzle"오류가 있습니까?

$client = S3Client::factory(array('key'=>$ak,'secret'=>$sk)); 

foreach(range(1,10) as $i) $temp[] = array('Key'=>$i); 

$result = $client->deleteObjects(array('Bucket'=>'bucket','Objects'=>$temp)); 

return $result; 

모든 것이 작동하면 요청 된대로 객체가 삭제되지만 phar 파일에서 이러한 모든 오류가 발생합니다. 아래에서 볼 수 있듯이 로컬로 실행합니다. Guzzle\Http\Exception\CurlException: [curl] 56: Problem (2) in the Chunked-Encoded data [url] https://bucket.s3.amazonaws.com?delete= in phar://C:/wamp/www/bucket/local/aws.phar/Guzzle/Http/Curl/CurlMulti.php on line 365

Fatal error: Uncaught exception 'Guzzle\Http\Exception\CurlException' with message '[curl] 56: Problem (2) in the Chunked-Encoded data [url] https://bucket.s3.amazonaws.com?delete=' in phar://C:/wamp/www/bucket/local/aws.phar/Aws/Common/Client/AbstractClient.php on line 285

Aws\Common\Exception\TransferException: [curl] 56: Problem (2) in the Chunked-Encoded data [url] https://bucket.s3.amazonaws.com?delete= in phar://C:/wamp/www/bucket/local/aws.phar/Aws/Common/Client/AbstractClient.php on line 285

+0

현재 동일한 문제가 있으며, 일반적으로 버킷에서 파일 목록을 가져 오려고 할 때 표시됩니다. foareach() 문제 일까? Windows 7에서 WAMP로 테스트하고 있습니다. – joshas

+0

여기, win7 x64 및 wamp와 동일합니다. – Mickey

답변

0

가능한 해결 방법 S3Client :: 공장 옵션

'curl.options' => array('CURLOPT_HTTP_VERSION'=>'CURL_HTTP_VERSION_1_0') 

를 추가하는 것입니다.

더 이상 언급 된 컬 오류는 없지만 이제는 간단한 XML 오류가 발생합니다. "엔티티 : 2 행 : 파서 ​​오류 : 문서 끝에 여분의 콘텐츠가 있습니다."

+0

나는 이제 원래의 오류와 3 개의 간단한 xml __construct() 오류가 추가되었다 : - 모든 것이 제대로 작동 함을 말할 필요도없이 .. 단지 더 많은 오류가있다. – Mickey

1

조금 늦었지만이 검색어는 거의 반환되지 않았으며, 다른 사람에게 도움이되기를 바랍니다.

deleteObject, WAMPSERVER (64 BITS & PHP 5.4) 2.4, Windows 7 x64를 삭제하려고 할 때만이 오류가 발생했습니다. 나는이 버전의 WAMP에서 Curl 확장 기능에 문제가 있다고 생각합니다. 나는 WAMPSERVER (32BITS & PHP 5.4) 2.4를 설치했고 deleteObjects에는 문제가 없었다.

2

Windows 7 x64에서 WampServer를 실행하는 중에도이 문제가 발생했습니다. 멍청한 행운을 빌어 방금 해결책을 발견했습니다.

'scheme' => 'http'을 출고시 구성 설정에 추가하면 작동하기 시작합니다.