The Rails 8 Guide states:
By default, Active Storage assumes private access to services. This means generating signed, single-use URLs for blobs. If you'd rather make blobs publicly accessible, specify
public: truein your app'sconfig/storage.yml:
However they are the same all the time, despite that I run it multiple times:
Rails.application.routes.url_helpers.rails_blob_path(model.video, only_path: true, redirect: false)
=> "/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTYsInB1ciI6ImJsb2JfaWQifX0=--30a44e70ca899607724ec3259a5b255153e86e9d/IronCross.MOV?redirect=false"
Also that private, "single-use URLs for blobs" is contradictory with this:
All Active Storage controllers are publicly accessible by default. The generated URLs are hard to guess, but permanent by design. If your files require a higher level of protection consider implementing Authenticated Controllers.
If that single-use URL is true then how can it be generated?
https://edgeapi.rubyonrails.org/classes/ActiveRecord/SignedId.htmlthe "default is set to not expire" ...model.video.urlis the temporary url, but you shouldn't be using it directly.rails_blob_pathfor redirect url,rails_storage_proxy_pathfor proxy url. when using helpers it is resolved to a redirect url or proxy based on configuration guides.rubyonrails.org/…