2013-04-12 3 views

답변

1

코드를 여기저기서 뒤죽박죽으로 작성한 후, 이전에 작성한 다른 사이트의 S3 호출 중 일부를 살펴본 후이를 수행 한 방법을 비교했습니다. 대신

$bucket = 'mybucket'.strtolower($s3->key); 

내가 사용 :

$bucket = 'mybucket'; 

마지막 코드는 다음과 같이 보았다 : 나는 다음을 사용하지 않은 내 이전의 코드에 주목 한

include 'lib/sdk.class.php'; 
$s3 = new AmazonS3(); 
$bucket = 'mybucket'; 
$key = 'myfile.txt'; 
$response = $s3->if_object_exists($bucket,$key); 

이 종료 최대 작업. 그러나, 나는 amazon에 의해 제공된 예제를 통해 이것이 작동하는 이유를 전혀 모른다.

+0

이 솔루션은 나를 위해 일하지만 너무 모릅니다. –

1

파일이 실제로 존재하고 액세스 가능한 경우이 함수는 true를 반환해야합니다.

$s3->enable_debug_mode(true); 

이에 CURL_VERBOSE 출력을 켜고 당신은 당신의 코드를 실행할 때 S3에가는 실제 HTTP 요청 및 응답을보고 할 수 있어야한다 : 나는 다음을 수행하여 디버그 모드에서 SDK를 넣어 시도 할 것입니다. 그게 잘못된 일이 무엇인지 알아내는 데 도움이 될 것입니다. 그 후에 버그가 있다고 생각되면 SDK의 GitHub에서 문제를 https://github.com/amazonwebservices/aws-sdk-for-php/issues에 제출할 수 있습니다.