我有一个使用RoR开发的网站,用户可以上传照片。我使用paperclip gem来上传照片并将它们作为文件存储在服务器上。我计划使用Amazon S3来存储这些照片。我需要将现有的所有照片从服务器迁移到Amazon S3。请问有没有最佳的方法可以实现这个目标?谢谢!
我有一个使用RoR开发的网站,用户可以上传照片。我使用paperclip gem来上传照片并将它们作为文件存储在服务器上。我计划使用Amazon S3来存储这些照片。我需要将现有的所有照片从服务器迁移到Amazon S3。请问有没有最佳的方法可以实现这个目标?谢谢!
您需要登录AWS控制台并创建一个存储图片的桶结构。无论是S3还是Paperclip都没有从文件系统进行批量迁移的工具,您需要使用s3cmd 工具来完成此操作。特别是,您需要关注 s3cmd sync 命令,类似于:
s3cmd sync ./public/system/images/ s3://imagesbucket
public
目录具有相同文件夹结构的存储桶来实现此目标。images
文件夹中的所有图像移动到该新存储桶的images
文件夹中。image_tag
或其他标签助手(javascripts、stylesheets等),那么它将在生产环境中使用该asset_host
并正确生成指向您的S3存储桶的URL。