2012-11-25 92 views
0

Amazon S3上的图像即将过期,因此当用户发布帖子时不会在页面上显示。Amazon S3图片过期

我使用Backbone + Rails,因此我在加载页面时加载每个用户的图片url。这存储在居住在用户浏览器中的Backbone模型中。当用户发布新帖子时,我想在帖子旁显示他/她的图片。当页面第一次加载时,这工作正常,但在图像过期后,如果用户发布帖子,图像不会显示,并且在控制台中出现图像位于S3上的URL被禁止的错误是被禁止的。

我在S3管理控制台中,但没有看到我可以在哪里更改到期时间,或者完全消除到期时间。任何人都知道如何做到这一点,或知道解决这个问题的另一种方法?

+0

只是不要定义到期时间。这不是文件过期,它是可以设置为在特定时间后过期的文件的公用URL –

+0

10当您公开文件时,默认情况下它没有任何到期。您使用哪种方法将其设置为公开? – Guy

+0

在AWS S3管理控制台中,右键单击具有要公开的图片的文件夹(又名没有到期日期),然后单击“公开”。但是,当我在Rails中获取图像时,它仍然会返回带有'expires'参数的图像的URL。 –

回答

0

如何将图片上传到S3?上传图片时应该公开图片。

+0

我在Rails中使用Carrierwave。我通过右键单击文件夹并单击“公开”在S3上公开图像。 –

+0

公开文件夹是不够的,因为默认情况下,新文件不会被公开。上传时,您必须为每个文件指定公开。您可以在Carrierwave中通过在其配置中添加下列行来实现此目的 config.fog_public = ** true ** – Hossein