Safari is unable to play video media due to incorrect Content-Length header
What happened?
Video requests hang indefinitely and time out. This behavior is exhibited on Curl as well.
Causing Safari to re-request the video until it eventually rate limits.
What did you expect to happen?
The video media being returned.
Version 2024.9.3
Instance zoner.work
What type of issue is this?
Backend request handling
What browser are you using? (Client-side issues only)
Safari
What operating system are you using? (Client-side issues only)
macOS Sonoma
Additional Diagnostics
Safari requests a byte range of 2 bytes. Range: bytes=0-1
Chrome and Firefox request an arbitrary byte range (Range: bytes=0-
)
Minimal curl:
curl 'https://zoner.work/files/webpublic-8ee66223-9f38-4732-86b9-2b86dfbfa0dc' -H 'Range: bytes=0-1'
Same behavior is displayed on other sharkey instances. It is uncertain if it also happens on upstream misskey
2 bytes correctly get sent, however curl will attempt to request the remaining bytes indicating a Content-Length/Content-Range error.
headers:
content-range: bytes 0-1/1515271
accept-ranges: bytes
content-length: 1515271
Content-Length should be 2
Contribution Guidelines By submitting this issue, you agree to follow our Contribution Guidelines
- I agree to follow this project's Contribution Guidelines
- I have searched the issue tracker for similar issues, and this is not a duplicate.