SailsJS 船长以 root 身份上传文件,我如何以应用程序的所有者身份上传?

SailsJS skipper uploading files as root, how do I upload as the app's owner?

我正在使用 skipper 上传图片,但图片一直上传为 root 所有,这不是我想要的结果。 sails app 在用户 X 的主目录下的一个子文件夹中,其中所有文件都归用户 X 所有。我是 运行 "sudo sails lift" 来启动应用程序,所以也许 sudo 与它。

上传代码如下:

req.file('images').upload(function ( error, files ) {

    if ( error ) {
        return res.serverError( error );
    }

    return res.json({
        message: files.length + ' file(s) uploaded successfully!',
        files: files
    });

});

如何确保文件是以用户 X 的身份上传的?

Sails,或更具体地说 Node.js,与任何网络服务器一样,上传文件与启动服务器的所有者。你用 sudo 开始航行,这就是原因。如果您想更改该行为,您有 2 个选择,运行 与想要的用户一起航行,或者在上传后使用 node fs chown 函数

更改所有者