Meteor - 将上传的文件存储到 TempStore 时出错

Meteor - Error storing uploaded file to TempStore

我在将文件上传到 FS Collection 时遇到问题。

首次使用 MUP 启动时,我没有遇到任何问题。现在我在 mup 日志中收到一条错误消息:

Error: Error storing uploaded file to TempStore: EACCES, open '/opt/kpinsonstairs-deploy/cfs/files/_tempstore/images-8r5w8T5cuknAE3SS4-0.chunk'
    at EventEmitter.<anonymous> (packages/cfs_collection/packages/cfs_collection.js:161:1)
    at EventEmitter.emit (events.js:98:17)
    at WriteStream.<anonymous> (packages/cfs_tempstore/packages/cfs_tempstore.js:343:1)
    at WriteStream.emit (events.js:117:20)
    at WriteStream.<anonymous> (fs.js:1669:12)
    at Object.oncomplete (fs.js:108:15)
error: Forever detected script exited with code: 8
error: Script restart attempt #1

我已了解这可能是我的 FS Collection images 的权限问题。

但是,我有上传到该集合路径的开放权限。

Images = new FS.Collection("images", {
  stores: [
    new FS.Store.FileSystem("images", {path: Meteor.absolutePath + '/private/uploads'})
  ],
  filter: {
    maxSize: 2097152, // 2MB
    allow: {
      contentTypes: ['image/*']
    }
  },
  onInvalid: function (message) {
    if (Meteor.isClient) {
      alert(message);
    } else {
      console.log('error: ' + message);
    }
  }
});

if (Meteor.isServer) {
  Images.allow({
    insert: function () {
      return true;
    },
    remove: function () {
      return true;
    },
    download: function () {
      return true;
    },
    update: function () {
      return true;
    }
  });

  Meteor.publish('images', function() {
    return Images.find({});
  });
}

我无法找到有关如何解决此问题的答案。

我该如何解决这个问题?

所以'EACCES'表示文件系统级权限问题。

"However, I have open permissions for uploading to this collection's path" -- 我不确定这是否意味着您已经检查了文件系统权限 -- 但这是您需要做的:检查目录 /opt/kpinsonstairs-deploy/cfs/files/ 和确保您用于 运行 您的软件的用户对该目录具有 read/write/execute 权限。