我正在開發一個項目,我必須爲存儲在s3中的文件提供用戶下載鏈接。最初我嘗試過,載波+霧(s3)。讓用戶下載文件
link_to "Download", @medium.file.url
但是這會直接在瀏覽器上打開文件。當我試圖下載mp4文件時,chrome開始自動播放。我不希望這種情況發生。所以我使用由send_file這個任務,
def download
@medium = Medium.find(params[:id])
send_file @medium.file.url
end
在我的地方,我已經設置爲文件的存儲和我已經測試了這一點,這工作完全正常。但是在分期上,這些文件是從S3服務的,我總是得到ActionController :: MissingFile。我的應用程序託管在heroku上。我也想知道如果使用send_file是不錯的選擇,或者有更好的方法來做到這一點。
config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect'
當我googling,我發現nginx頭設置發送文件應啓用生產。我在config/environments/production.rb中添加了以下行。仍然沒有運氣。我需要一些幫助。謝謝。
我在哪裏添加內容處置:附件?我找不到性質 - >元數據。 – Cyrus 2012-03-22 06:34:44
這是該文件的屬性。我沒有訪問權限,但點擊存儲桶和文件夾,點擊文件並按屬性(據我所知,有人可能會證實這一點) – 2012-03-26 09:37:42