【问题标题】:Rails 4 - where to store temporarily files?Rails 4 - 在哪里存储临时文件?
【发布时间】:2016-05-08 13:57:02
【问题描述】:

我正在生成 txt/pdf 文档,将它们(当前)保存在 /tmp 目录中,将它们上传到 Amazon S3,然后从 /tmp 目录中删除它们。

问题是,当我在当前生成新文件时部署一些新代码时,生成过程被中断,因为该文件已从/tmp 目录中删除。

在 Rails 系统中存储临时文档的最佳位置在哪里?

【问题讨论】:

    标签: ruby-on-rails ruby file tmp


    【解决方案1】:

    就像你提到的,这个通用目录直接是tmp

    要解决在部署期间 tmp 目录被“取消引用”的问题,您可以将 tmp 目录符号链接到不会在每次部署时重置的共享目录。同样的概念也适用于日志和其他共享配置。

    所以你的目录结构可能看起来像这样:

    • www/
      • appname/
        • current/
        • releases/
        • shared/
          • tmp/
          • config/
          • pids/
          • log/

    【讨论】: