Follow

: если залитый в Mastodon аудиофайл не прослушивается, и лисица выдает
```
Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на assets.home.social/cache/media. (Причина: отсутствует заголовок CORS «Access-Control-Allow-Origin»). Код состояния: 206.
```
то это вообще что значит?

В Хроме/опере у аудиофайла даже не грузится кнопка плей.

Что у меня может быть сломано? @ru@lor.sh @rf

@johan
Это значит, что кто-то CORS для S3 не настроил.

@skobkin «Вы находитесь на воздушном шаре» 🙂

Т.е. если у меня вообще никакие аудиофайлы в Мастодоне не проигрываются, с любых серверов, то проблема, блин, где?

@johan
Проблема в отсутствии настроенного CORS в твоём S3 сторедже.

Потому что контент других серверов кешируется там же перед тем как тебе его показывать.

@johan в настройках инстанса, короче. Починить может только его администратор.

@skobkin

@dside @skobkin ...И это несмотря на то, что по прямой ссылке, указанной в сообщении о ошибке, как из оригинального источника, так и из кэша другого инстанса, mp3-файл нормально грузится, даже из браузера, где я ни в какой Мастодон не залогинен?

@johan @dside
Да. Потому что когда ты по прямой открываешь, это происходит из другого контекста.

CORS - он про то что ты находясь в контексте домена X запрашиваешь ресурс с домена Y.

@johan угу. CORS, грубо, это про политики загрузки одного изнутри другого. Оба могут работать по отдельности, но не доверять друг другу и не работать именно в связке.

@skobkin

@dside @skobkin А чем это отличается от, например, воспроизведения Ютуба и показа картинок?

@skobkin @dside ...Но не работает только аудио, залитое в Мастодон... Штош...

@johan @dside
Потому что:

- Встраиваемый YouTube обычно в IFRAME. То есть в проигрыватель находится в контексте доменов гугла, а не твоей страницы.
- У гугла может стоять настройка на разрешение "*" (всего подряд).

@johan это зависит от заголовков, что приходят с ресурсом (картинкой, аудио, и т. д.). Они не обязаны быть связаны с типом медиа. Но могут. В конфиге можно такое написать. Можно даже случайно: настроить добавление заголовка CORS для URL только с картиночными расширениями, например, чтобы починить отображение именно картинок, и забыть про остальные типы вложений.

@skobkin

@johan
заголовок CORS позволяет источнику сайта запрещать запросы к другим доменам.

то есть, когда страница с home.social лезет на assets.home.social ей нельзя пока не разрешишь.

вроде так.

@ru @rf

@kpmy ...И это вот так повсеместно в Мастодоне, потому что админы забивают на настройку для .mp3?

@johan наверное, только у тех кто разделил домены

на моем простецком всё работает m.ocsf.in/@kpmy/11000391516986

@kpmy Да, но только если отдельно страницу открыть. Если смотреть из морды другого сервера — та же ошибка 😠

@johan потому что другие сервера отдают контент со своих под-доменов

@johan ну или клевать админа, пусть чинит)

@kpmy @johan нет, сторонние сервера не обязаны прокачивать контент через себя, но многие так делают, чтобы не раскрывать айпишники своих пользователей

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.