Heroku应用程序中保存的图像未显示?

时间:2016-12-16 23:45:05

标签: php image postgresql laravel heroku

我是网络开发的新手,我刚刚使用Heroku部署了我的网站。我使用Laravel作为框架,使用Postgres作为数据库。

在我的网站中,我有一个在我的公共/图像文件夹中存储图像的功能。如果我在将图像部署到Heroku之前保存了图像并更改了文件权限,则会显示图像。但是,如果图像是通过Heroku直接上传的,则不会显示图像。

我猜这是由文件权限引起的。也许是因为在Heroku的public / images文件夹中上传的图像没有继承文件夹的权限?

1 个答案:

答案 0 :(得分:3)

Heroku上的文件系统不是持久的。您无法在Web服务器文件系统上保存文件,并希望这些文件可用于后续HTTP请求。

您需要使用另一个持久性存储,例如将这些文件存储在AWS S3或数据库中。还有其他插件可以让你足够简单地保存文件。

参考:https://devcenter.heroku.com/articles/dynos#ephemeral-filesystem

以下是保存和显示Postgresql数据库中图像的示例:Upload/Download file in POSTGRESQL database with PHP