Ich verwende die official PHP SDK mit the official service provider for laravel, um ein Bild auf Amazon S3 hochzuladen. Das Bild wird vorübergehend auf meinem Server gespeichert und sollte nach dem Hochladen gelöscht werden. Der folgende Code ist der Code, den ich zum Hochladen und Löschen verwendet habe.Wie kann die Datei nach dem Hochladen der Datei durch AWS S3 Helper entsperrt werden?
$temp_path = "/screenshot_temp/testing.png";
$client = AWS::createClient('s3');
$result = $client->putObject(array(
'Bucket' => self::$bucketName,
'Key' => 'screenshot/testing.png',
'SourceFile' => $temp_path,
'ACL' => 'public-read'
));
);
chown($temp_path, 777);
unlink($temp_path);
Der Upload ist erfolgreich. Ich kann mein Bild mit dem Link zurück sehen, und ich kann es auf der Amazon Konsole sehen. Das Problem ist, dass das Löschen fehlschlägt, mit der folgenden Fehlermeldung:
ErrorException: unlink(... path of my file ...): Permission denied
Ich bin sicher, dass meine Datei Erlaubnis Einstellung richtig ist, und ich bin der Lage, meine Datei mit dem Code-Abschnitt zu löschen, für das Hochladen, um S3 Kommentar . Es sollte also das Problem sein, dass die Datei beim Hochladen der Datei gesperrt ist. Gibt es eine Möglichkeit, meine Datei zu entsperren und zu löschen?
Bucket-Objekte sind keine Dateien –