首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >**到**托管在Heroku上的Rails应用程序?

**到**托管在Heroku上的Rails应用程序?
EN

Stack Overflow用户
提问于 2011-04-05 02:52:40
回答 5查看 9.1K关注 0票数 12

请原谅这个古怪的问题,但是有没有办法让我的Rails应用程序接收FTP传输?

我有每天的FTP上传,我没有控制,它上传数百个HTML页面,每天到我们现有的服务器。我想把这个站点移到Heroku上的纯Rails部署,但是我不能接触这个FTP上传(这仍然需要发生)。

由于Heroku不提供公共存储空间或FTP,所以我不能直接将文件上传到Heroku (我也不是真的想上传)。我喜欢的是将FTP上传指向我的Rails应用程序,然后让我的Rails应用程序接收并解析HTML文件,以提取我需要的信息,将其存储在数据库中,并执行我需要做的任何其他事情。(有点像RESTful操作,但通过FTP而不是任何标准的REST动词)。

这是完全可能的吗,还是我想它是疯了?如果可能的话,我该怎么做呢?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-04-05 20:01:43

Heroku不支持您的应用程序接收FTP。

如果你真的想要的话,你可以写一个关于接收FTP的Heroku插件。

票数 4
EN

Stack Overflow用户

发布于 2011-04-07 01:40:07

您可以使用cron安排一个rake任务,它将检索ftp服务器上的文件并将它们上传到您的数据库中。

下面是您的cron.rake文件应该是什么样子:

代码语言:javascript
复制
    require 'net/ftp'

    task :cron => :environment do
      Dir.chdir("tmp") do
        Net::FTP.open("ftp.example.com") do |ftp|
          ftp.passive = true
          ftp.login('login', 'password')
          ftp.chdir("your_dir")
          ftp.get("your_file")
          # ... Load the files in the database here
        end
      end
    end

有两件事需要牢记:

由于Heroku不支持active mode.

  • Everything,因此
  • 不要忘记ftp.passive = true您要执行的操作应包含在rake任务中,因为Heroku会在任务结束时擦除临时目录。
票数 17
EN

Stack Overflow用户

发布于 2011-07-26 03:36:56

我还需要一个Heroku实例通过FTP接收文件。

我正在考虑使用Brick FTP

webhook发出文件已经上传的信号时,我计划下载文件内容并将其导入数据库。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5542916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档