Heroku 主动存储 S3 Seahorse::Client::NetworkingError (Net::OpenTimeout)
Posted
技术标签:
【中文标题】Heroku 主动存储 S3 Seahorse::Client::NetworkingError (Net::OpenTimeout)【英文标题】:Heroku active storage S3 Seahorse::Client::NetworkingError (Net::OpenTimeout) 【发布时间】:2022-01-14 00:08:22 【问题描述】:我遇到了一个非常奇怪的问题。我们正在使用以下组合
-
Rails 7.0.0 主分支
Heroku
活动存储
Bucketeer 插件
暂存应用程序
生产应用
我有两个环境暂存和生产。在暂存时一切正常,在生产中我不断遇到:Seahorse::Client::NetworkingError (Net::OpenTimeout)
。不幸的是,heroku 支持没有帮助(值得一试),所以我在这里问。
如果我从 Rails 控制台直接使用 s3,一切正常。我可以从我的存储桶上传和下载对象,因此我知道环境变量是有效的。
另一方面,如果我尝试使用活动存储上传用户头像,则会收到以下错误消息:Seahorse::Client::NetworkingError (Net::OpenTimeout)
,对我来说,这表明连接到 S3 完全失败。
我已经为活动存储的storage.yml
和全球亚马逊配置尝试了不同的超时,没有不同的结果。错误似乎比超时返回更快(打开超时 15 秒应该等待 15 秒但它不会)。
非常感谢任何指向正确方向的指针。
【问题讨论】:
【参考方案1】:删除config/credentials/production.yml
后一切正常。
【讨论】:
以上是关于Heroku 主动存储 S3 Seahorse::Client::NetworkingError (Net::OpenTimeout)的主要内容,如果未能解决你的问题,请参考以下文章
读取和写入存储在 aws s3 (Heroku + Django) 中的数据库文件
从 heroku 访问 s3 内容时,AWS 访问密钥显示在浏览器 url 中