ruby-on-rails - Rails Active Storage 推送到 DigitalOcean Spaces
问题描述
嗨,我正在尝试获取活动存储以推送到 DigitalOcean 空间。但是,我发现推送 url 正在更改为 amazonaws.com,即使我已将端点定义为数字海洋。
这是我在 storage.yml 中的内容
amazon:
service: S3
access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
region: sfo2
bucket: redacted_bucket_name
endpoint: https://sfo2.digitaloceanspaces.com
当我尝试上传文件时,出现以下错误:
Aws::Errors::NoSuchEndpointError (Encountered a `SocketError` while attempting to connect to:
https://redacted_bucket_name.s3.sfo2.amazonaws.com/a8278561714955c23ee99
在我的 gemfile 中,我有:gem 'aws-sdk-s3
我已按照此处找到的说明进行操作,但仍然出现错误。有没有可能有一种新的方法来做到这一点?
解决方案
几天前我自己设置了这样的东西。当您检查 URLhttps://redacted_bucket_name.s3.sfo2.amazonaws.com/a8278561714955c23ee99
时,它与您设置的实际端点不同https://redacted_bucket_name.sfo2.amazonaws.com/a8278561714955c23ee99
该错误是由您击中的无效端点引起的,s3
就在.sfo2
偏移端点之前。您是否碰巧添加s3
到您的空间配置中?检查您的空间仪表板并尝试正确设置端点。
推荐阅读
- c# - 如何在 Unity3D 中快速渲染从 Android 获取的字节数组?
- python - 数据框缺失值显示在每行的末尾
- hadoop - 在 Hive 查询中显示前一个日期的日期名称?
- javascript - TSLint。最大语句规则 - 它可用吗?
- node.js - NodeJS - 超级代理。SSL23_GET_SERVER_HELLO 尝试通过 HTTPS 获取方法时
- xaml - 自适应列表视图根据 UWP xaml 应用程序的屏幕大小进行调整
- javascript - 如何使用 jQuery 添加/附加 html 表单元素
- c++ - 如何在 C++ 程序中随机生成“az”和“AZ”?
- java - Java - jndi ldap 慢搜索
- java - 使用 Java 插入 ExistDB