2014-03-13 121 views
0

獲得以下錯誤:問題在AWS的S3 PHP SDK狂飲

PHP的警告:要求(狂飲/ HTTP/Client.php):未能打開流: 在/ var沒有這樣的文件或目錄/ www/html等/index.php on line 7

PHP致命錯誤:require():無法打開所需的'Guzzle/Http/Client.php'(include_path ='。:/ usr/share/pear:/ usr/share/php :/ home/ec2-user/pear:/ home/ec2-user/pear/share/pear/Guzzle:./ Aws')in /var/www/html/index.php on line 7

my code

<?php 
set_include_path(get_include_path() . PATH_SEPARATOR . '/home/ec2-user/pear'); 
set_include_path(get_include_path() . PATH_SEPARATOR . '/home/ec2-user/pear/share/pear/Guzzle'); 
set_include_path(get_include_path() . PATH_SEPARATOR . './Aws'); 
function my_autoload($class_name) 
{ 
    $class_name = str_replace("\\","/",$class_name); 
    require $class_name. '.php'; 
} 
spl_autoload_register('my_autoload'); 
require '/home/ec2-user/pear/share/pear/Guzzle/Service/Client.php'; 
require 'Aws/S3/S3Client.php'; 

有人可以回答嗎?

感謝 阿肖克

回答

0

該自動加載/包括邏輯看起來不正確的。如果您通過PEAR安裝SDK和Guzzle,PEAR目錄是否不在您的PHP路徑中?如果是這樣,你只需要做:

require 'AWSSDKforPHP/aws.phar'; 

所有的AWS或Guzzle類應該自動加載之後。另請參閱:http://docs.aws.amazon.com/aws-sdk-php/guide/latest/quick-start.html

+0

我使用PEAR安裝幷包含需要獲取錯誤無法打開所需'AWSSDKforPHP/aws.phar' – Ashok

+0

聽起來像是你的PEAR配置有些不正確。你有沒有考慮過不使用PEAR?我們通常推薦使用Composer或直接下載預先打包的'aws.phar'來安裝SDK。請參閱http://docs.aws.amazon.com/aws-sdk-php/guide/latest/installation.html。 –

+0

謝謝,現在當我運行php index.php我沒有得到錯誤。但如果它是通過瀏覽器我在Apache錯誤日誌中出錯無法打開需要'AWSSDKforPHP/aws.phar'。任何線索 – Ashok