0

當用戶上傳大圖像(800px高於@ 100kb +)時,我在日誌中看到55ms內出現了Completed 500內部服務器錯誤。Carrierwave和Imagemagick超時上載

我想知道是否有任何方法可以在我的Rails應用程序中將超時設置爲更高的設置,或者如果有可以爲慢用戶連接設置的Carrierwave配置。

# Error log 
Completed 500 Internal Server Error in 55ms 

Magick::FatalImageMagickError (time limit exceeded `jibberish' @ fatal/cache.c/GetImagePixelCache/2180): 
    app/controllers/images_controller.rb:5:in `new' 
    app/controllers/imagess_controller.rb:5:in `create' 

該應用程序停止響應,我必須在它重新開始之前重新啓動它。不幸的是,如果嘗試上傳其他圖片,它會遇到同樣的問題。

回答

1

你上傳的應用程序中的圖像?通常最好的做法是使用像amazon s3這樣的外部文件數據庫,記得rails一次只能處理一個請求,除非你使用的是獨角獸或其他東西,所以我不認爲你可以延長超時時間,也許你可以使用延遲工作或什麼,但我不認爲這是一個良好的做法,這裏是一個railscasts插曲我覺得有用: http://railscasts.com/episodes/383-uploading-to-amazon-s3