Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
heroku和nuxt文件上载程序不工作_Heroku_Save_Storage_Nuxt.js_Multer - Fatal编程技术网

heroku和nuxt文件上载程序不工作

heroku和nuxt文件上载程序不工作,heroku,save,storage,nuxt.js,multer,Heroku,Save,Storage,Nuxt.js,Multer,我有一个正确部署了NuxtJS并在Heroku上工作的PWA。 我想实现一个文件上传器和管理器,这样我就可以通过一些API从前端管理目录(~/static/files)中的一些文件。 在localhost上,它可以正常工作,因此我有自己的目录,当我添加或删除文件时,它会从文件系统中删除或创建它(它应该这样做) 我的问题是:为什么我不能对Heroku做同样的事情?我的意思是,我试图上传一个文件并将其删除,但问题是当我重新启动应用程序时(通过heroku ps:restart-a appname),

我有一个正确部署了NuxtJS并在Heroku上工作的PWA。 我想实现一个文件上传器和管理器,这样我就可以通过一些API从前端管理目录
(~/static/files)
中的一些文件。 在localhost上,它可以正常工作,因此我有自己的目录,当我添加或删除文件时,它会从文件系统中删除或创建它(它应该这样做)

我的问题是:为什么我不能对Heroku做同样的事情?我的意思是,我试图上传一个文件并将其删除,但问题是当我重新启动应用程序时(通过
heroku ps:restart-a appname
),因为当我这样做时,它会删除文件,就好像它保存在RAM中而不是文件系统中一样

如果我试图通过heroku run bash-a appname查看目录中的文件,然后向下查看目录,则不会显示任何文件。
如何修复此问题?

Heroku文件系统是短暂的-这意味着在dyno运行时对文件系统的任何更改只会持续到dyno关闭或重新启动。每个dyno都会使用最近部署的文件系统的干净副本启动。这类似于许多基于容器的系统(如Docker)的操作

此外,在正常运行情况下,dynos每天都会在一个称为“循环”的过程中重新启动

这两个事实意味着Heroku上的文件系统不适合持久存储数据。在需要存储数据的情况下,我们建议使用数据库插件,如Postgres(用于数据)或专用文件存储服务,如AWS S3(用于静态文件)