我想下載一個存儲在S3上的文件到我本地的Laravel安裝來操作它。希望得到一些幫助。Laravel從S3下載到本地
我的配置數據設置正確,因爲我可以毫無困難地上傳它。我使用以下模式「user-> id/media-> id.mp3」將它保存在S3中 - >注意事實上,我不只是在S3上轉儲文件,我將它們保存在目錄中。
將文件成功上傳到S3後,我更新了數據庫中的保存路徑以顯示「user-> id/media-> id.mp3」,而不是一些長的公共url(是否有錯誤)?
當我以後回去嘗試下載文件時,我在S3處得到FileNotFoundException。我正在這樣做。
$audio = Storage::disk('s3')->get($media->location);
奇怪的是,在例外它表明,它不能獲取資源,但是當我把同樣的網址在瀏覽器中會顯示該文件沒有任何麻煩。爲什麼文件系統無法獲取文件?
我試圖在「get」之前做一次「has」檢查,並且has檢查出現錯誤。
我是否需要將完整的公共URL保存在數據庫中才能正常工作?我試過了,它沒有幫助。我覺得我錯過了很簡單的東西,這讓我瘋狂!
你的網址可能是這樣的https://s3.amazonaws.com/your_bucket/some_folder/some_other_folder/my.file所以你需要通過從桶中獲取文件的桶之後的完整路徑 –