Я не совсем в курсе последних событий в ActiveStorage. Я использую Rails 5.2.x и у меня есть серьезные проблемы. URL-адрес по умолчанию, сгенерированный для ресурсов, представляет собой ограниченный по времени вызов
{host}/rails/active_storage/blobs/{long-obfuscated-stuff-here}/{the-actual-file}
Этот метод, очевидно, имел явный сценарий использования в BaseCamp, но если вы используете CDN или Nginx / Apache для непосредственного обслуживания активов с диска это так же полезно, как шоколадный заварной чайник, потому что каждый запрос должен содержать от go до rails/active_storage/blobs
, и поскольку это уникальный ограниченный по времени URL, он не может быть кэширован.
Я вижу длинные потоки по этой проблеме, пытающиеся заставить разработчиков ядра принимать PR, чтобы решить эту проблему (например, github issue 34477 )
И проблема может быть решена в последний Rails 6. Но я на Rails 5.2 и не буду обновляться в ближайшем будущем.
Так что мне нужно знать, как получить необработанный URL для базового файла, чтобы я мог обслуживать его напрямую из Nginx / Apache, не проходя через стек Rails.
Есть предложения?