habe ich einen Code Amazon S3 mit diesem Komponisten Komponente zu verwenden:Amazon S3 und Yii2
https://github.com/2amigos/yii2-resource-manager-component
Das hat sehr gut funktioniert.
aber änderte ich meine Server und wenn ich ein Bild auf Amazon S3 laden erhielt ich diesen Fehler:
PHP Fatal Error – yii\base\ErrorException
Class 'Aws \ S3 \ Enum \ CannedAcl' nicht
gefundenich nicht geändert hat irgendetwas von Code, ich verstehe nicht, warum dieser Fehler, kann ich keine Lösung finden Wie kann ich es beheben?
Dies ist die kompletten Fehler:
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();
Diese Erweiterung verwendet "aws/aws-sdk-php": "2.5.2" und Es ist sehr alt (bei GitHub Version 3.18 ist das neueste). AWS sagte, dass CannedAcl in Version 3 entfernt wurde, so dass es keinen Einfluss auf 2.5.2 haben sollte (es ist in 2.5.2 vorhanden). Anyway gibt es das gleiche Problem über diese https://github.com/2amigos/yii2-resource-manager-component/issues/10 – Bizley
Vielen Dank, Sie haben Recht. Ich muss meinen Code aktualisieren. –