Ruby on rails GridFS+CarrierWave+nginx无法获取文件

Ruby on rails GridFS+CarrierWave+nginx无法获取文件,ruby-on-rails,mongodb,carrierwave,gridfs,Ruby On Rails,Mongodb,Carrierwave,Gridfs,在我的项目中,我使用CarrierWave gem将音频文件上传到GridFS。上传后,文件被正确地保存到GridFS,但在我的应用程序中,我无法使用MongoFiles工具或GridFS nginx模块从GridFS获取它 mongofiles get audiotracks/4dfb70d6bcd73f3488000002/data 命令导致此错误: assertion: 13325 couldn't open file: audiotracks/4dfb70d6bcd73f3488000

在我的项目中,我使用CarrierWave gem将音频文件上传到GridFS。上传后,文件被正确地保存到GridFS,但在我的应用程序中,我无法使用MongoFiles工具或GridFS nginx模块从GridFS获取它

mongofiles get audiotracks/4dfb70d6bcd73f3488000002/data
命令导致此错误:

assertion: 13325 couldn't open file: audiotracks/4dfb70d6bcd73f3488000002/data
获取文件的唯一方法是使用rails控制台,它工作正常:

cc = Mongo::GridFileSystem.new(Mongo::Connection.new.db("test")).open('audiotracks/4dfb70d6bcd73f3488000002/data', 'r')

cc.read
因此,如果您遇到类似的问题或有一些想法,请告诉我。

mongofiles get将尝试使用与GridFS中相同的名称和路径将文件写入磁盘

当GridFS不能像这样写入文件时,就会发生断言13325

您应该检查文件路径是否存在,以及您是否有写入文件的权限。或者,您可以只提供带有-local参数的文件名

mongofiles --local mytrack.mp3 get audiotracks/4dfb70d6bcd73f3488000002/data