使用Heroku部署Node.js应用程序时公共目录的问题

时间:2013-11-05 11:22:02

标签: javascript node.js heroku client-side timeline.js

我一直在开发一个应用程序,它将在客户端提供Timelinejs(开源js库)元素。我将Timelinejs库复制到我的应用程序的public / javascripts /目录中。然后我在我的html标题中链接它。当我在本地提供我的应用程序时,一切正常,时间线。但是,我注意到当我将我的应用程序部署到Heroku时,它没有加载我的时间线。使用chrome js控制台我发现它没有在public / Javascripts / Timelinejs文件夹中找到我的文件。使用Heroku run bash命令,我发现文件结构中没有任何Timelinejs文件,尽管存在空的Timelinejs目录。是否需要指定任何命令或配置才能将这些文件提供给我的Heroku部署?

1 个答案:

答案 0 :(得分:2)

Heroku有一个只读文件系统。您可以编写的目录是./tmp或./log。你不能在公共文件夹内写。 这是因为他们如何管理他们的动态和扩展它们的方式。如果要存储内容,请使用./tmp或推荐的s3存储桶。 (因为我认为'tmp'代表'临时':D)

此处有更多信息:https://devcenter.heroku.com/articles/read-only-filesystem