【问题标题】:How to allow fs and multer to write files on AWS EC2如何允许 fs 和 multer 在 AWS EC2 上写入文件
【发布时间】:2017-06-04 22:58:36
【问题描述】:

我是编程新手,最近完成了一个部署在 AWS EC2 上的完整 MEAN 堆栈项目。

项目代码: https://github.com/Cryfoo/13

部署在:http://35.166.172.216/

在服务器端,它使用 fs.writeFile 在每次游戏后保存游戏日志。

// Codes from server/config/game.js @ lines 1361~1364
var filename = 10000 + roomNum;
filename = filename + "_" + endTime;
fs.writeFile("server/logs/" + filename + ".txt", variables[roomNum].logs, function(err) {});

在客户端,它向服务器发送 http 请求,并使用 multer 上传用户的个人资料图片。

// Codes from server/controllers/user.js @ lines 3~12
var storage = multer.diskStorage({
    destination: function (req, file, callback) {
        callback(null, "./client/static/profile");
    },
    filename: function(req, file, callback) {
        callback(null, file.originalname);
    }
});
var upload = multer({storage: storage, limits: {fileSize: 5000000}}).single("profile");

它在我的笔记本电脑上本地运行良好,但这两个功能在 EC2 上不起作用。我假设问题与允许写入文件的权限有关。如何允许 fs 和 multer 在 EC2 中写入文件?

我在这个项目期间对所有问题进行了大量搜索,并在stackoverflow和google上找到了解决方案,但是对于这个问题我无法弄清楚。如果我不够具体,我深表歉意(第一次在这里发布问题)。不过提前感谢您的帮助。

【问题讨论】:

    标签: mean-stack fs multer


    【解决方案1】:

    如果文件夹的权限有问题,则只需更改它们

    sudo chmod a+x -R server/logs
    

    编辑:您可能需要使用 sudo 运行命令

    【讨论】:

      猜你喜欢
      • 2023-04-05
      • 1970-01-01
      • 2021-10-16
      • 1970-01-01
      • 2019-09-21
      • 1970-01-01
      • 2018-11-21
      • 2014-05-23
      • 2017-05-07
      相关资源
      最近更新 更多