我使用附件Rails的回形針 - 下載文件被損壞了
當我下載文件回形針,它被損壞了。
文件是下載,能夠在生產
send_file attachment.data.path, :type => attachment.content_type, :x_sendfile => true, :stream => false
它在本地機器工作正常,但它在生產,但是我已經設置ENV爲生產出的問題
我使用附件Rails的回形針 - 下載文件被損壞了
當我下載文件回形針,它被損壞了。
文件是下載,能夠在生產
send_file attachment.data.path, :type => attachment.content_type, :x_sendfile => true, :stream => false
它在本地機器工作正常,但它在生產,但是我已經設置ENV爲生產出的問題
要做的第一件事就是檢查你試圖發送的文件是什麼。
您send_file
語句之前添加這行代碼:
logger.info "SENDING FILE: #{attachment.data.path.inspect}"
然後查看日誌,檢查路徑和查看文件是否確實是存在的。
我懷疑你的生產和發展模式具有不同的數據庫中的數據(這是很自然的和預期),但保存在文件系統中的文件不與數據庫同步。
這可能是有環境之間的其他一些差異,但路徑是我會考慮有罪的第一件事。
文件類型爲pdf並檢查打印文件的正確路徑,文件在那裏。它還在生產中發送X-Sendfile頭文件 –
生產中是否有相同的服務器?你的服務器是否理解X-Sendfile頭文件?例如,對於「nginx」,您應該使用「X-Accel-Redirect」而不是「X-Sendfile」。 – Arsen7
服務器是Apache,它解決了。問題出現在生產服務器上,發生了一些遷移,混淆了正確的路徑 –
請說出您對該文件有何問題?它是如何損壞的?你如何檢查它? – Arsen7
文件打開時爲空白,因爲它沒有完全傳輸,接收到1字節(IDM顯示爲0.00%) –