0
我創建了一個代碼使用亞馬遜S3使用這個作曲家組成:Amazon S3和Yii2
https://github.com/2amigos/yii2-resource-manager-component
這工作非常出色。
但我改變了我的服務器,當我上傳圖像到Amazon S3,我收到此錯誤:
PHP Fatal Error – yii\base\ErrorException
類「AWS \ S3 \枚舉\ CannedAcl」未找到
我沒有改變任何代碼,我不明白爲什麼這個錯誤,我找不到解決方案 我該如何解決它?
這是完全錯誤:
PHP Fatal Error – yii\base\ErrorException
Class 'Aws\S3\Enum\CannedAcl' not found
1. in /opt/app-root/src/admapps/vendor/2amigos/yii2-resource-manager-component/AmazonS3ResourceManager.php at line 78
69707172737475767778798081828384858687 * @return \Guzzle\Service\Resource\Model
*/
public function save($file, $name, $options = [])
{
$options = ArrayHelper::merge([
'Bucket' => $this->bucket,
'Key' => $name,
'SourceFile' => $file->tempName,
'ACL' => CannedAcl::PUBLIC_READ // default to ACL public read
], $options);
$this->getClient()->putObject($options);
}
/**
* Removes a file
* @param string $name the name of the file to remove
* @return boolean
*/
2. in /opt/app-root/src/admapps/vendor/yiisoft/yii2/base/InlineAction.php at line 55 – app\controllers\BeersController::actionUploadlogobeer()
3. in /opt/app-root/src/admapps/vendor/yiisoft/yii2/base/InlineAction.php at line 55 – call_user_func_array:{/opt/app-root/src/admapps/vendor/yiisoft/yii2/base/InlineAction.php:55}()
4. in /opt/app-root/src/admapps/vendor/yiisoft/yii2/base/Controller.php at line 154 – yii\base\InlineAction::runWithParams()
5. in /opt/app-root/src/admapps/vendor/yiisoft/yii2/base/Module.php at line 454 – yii\base\Controller::runAction()
6. in /opt/app-root/src/admapps/vendor/yiisoft/yii2/web/Application.php at line 87 – yii\base\Module::runAction()
7. in /opt/app-root/src/admapps/vendor/yiisoft/yii2/base/Application.php at line 375 – yii\web\Application::handleRequest()
8. in /opt/app-root/src/admapps/web/index.php at line 13 – yii\base\Application::run()
78910111213require(__DIR__ . '/../vendor/autoload.php');
require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
require(__DIR__ . '/../helpers/Utils.php');
$config = require(__DIR__ . '/../config/web.php');
(new yii\web\Application($config))->run();
此擴展使用「aws/aws-sdk-php」:「2.5.2」和這是非常古老的(在GitHub版本3.18是最新的)。 AWS表示他們已經刪除了版本3中的CannedAcl,因此它不應該對2.5.2(它存在於2.5.2中)產生影響。無論如何,有關於此https://github.com/2amigos/yii2-resource-manager-component/issues/10 – Bizley
報告相同的問題謝謝你,你是對的。我需要更新我的代碼。 –