S3 CDN URL не используется при загрузке файлов, отличных от изображений

Хорошо, я нашел место, где генерируется Markdown для вложений, и насколько я понимаю API плагинов, его нельзя (легко) переопределить (я даже думаю, что так делать не стоит).

Поэтому моя первоначальная идея добавить параметр ?dl=1 к этим URL-адресам кажется неверным подходом.

Что касается отсутствия принудительной загрузки для разрешенных коротких URL-адресов: если я правильно понимаю аргумент против публичных ACL для ведер S3, то следует либо:

  1. предоставлять файлы из S3 через CDN (что невозможно для вложений, как указал @martin, поскольку в этом случае мы можем не иметь возможности корректно установить имя файла для загрузки)
  2. создавать подписанный URL для объекта S3

Но текущее поведение не делает ни того, ни другого и предполагает, что ведро S3 имеет публичный ACL. Это также, похоже, относится к поддерживаемым провайдерам S3 (включая Amazon), поэтому я бы спросил, почему бы не сделать опцию force_download в Discourse.store.url_for по умолчанию равной true при разрешении коротких URL-адресов для хранилищ S3?

1 лайк