Description
EDIT: Switched title from Constant 403 errors while trying to load videoplayback
to Can't load the video on this Invidious instance. YouTube is currently trying to block Invidious instances.
in order to reflect the current error message.
EDIT by @unixfox: It appears that youtube is trying to block the popular invidious instances by returning 403 if the video stream is loaded through the invidious instance (with proxy or dash enabled).
Alternative solution is to switch off proxy or use another instance that is unblocked.
To public instances maintainers: #4045 (comment)
Describe the bug
I host my own invidious instance and some videos just won't load on it. The thumbnail loads, but the video itself does not. There's just a spinner and the timeline says 0:00/0:00. This does not happen with all videos, but I haven't spotted a pattern yet.
When looking at the network tab, I can see that the browser is constantly sending requests to /videoplayback
and getting a 403 status with no response body. It sends about 10 requests per second and doesn't stop until I close the tab. For reference, I use DASH on my instance.
Steps to Reproduce
- Go to https://vid.theedgeofrage.com/watch?v=RBo1Mq1JMh8
- Try to play video
- See error
Logs
Logs don't show anything besides the failing request log itself:
invidious-invidious-1 | 2023-08-10 09:50:50 UTC [info] 403 GET /videoplayback?expire=1691682024&ei=iLDUZJnwFNCOx_APssW3qAM&ip=94.130.141.40&id=o-ALEojr5Ke8EW5dc7Xuq-3wksylUWHvc81JCGu0Jw5dkp&itag=136&source=youtube&requiressl=yes&mh=Co&mm=31%2C26&mn=sn-4g5e6nzz%2Csn-f5f7kn7z&ms=au%2Conr&mv=m&mvi=4&pl=22&initcwndbps=445000&spc=UWF9f3uYf0Q_K1VEYIgDmPBkGM6dxrZqXRGhYOsRhw&vprv=1&svpuc=1&mime=video%2Fmp4&gir=yes&clen=438730931&dur=3145.775&lmt=1691291183341453&mt=1691660003&fvip=2&keepalive=yes&fexp=24007246&beids=24350018&c=ANDROID&txp=3309224&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIgLzQ6H_s28Scvwg6naQLHHEGK_-68OgYfih7J5xXWEdwCIQDdIlh8g6r6ZjTwl-kV2p4qAlFpOS0K6wzm0WBKq4wJsA%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAOBrXV03okr0vNFfd6sxZ-7xvwhPg1UNe209RUtr9O_wAiBaZWVNy_C4QhxWpOxZ1IP67fbfVGc03skcndJdI_ef2Q%3D%3D&host=rr4---sn-4g5e6nzz.googlevideo.com 50.29ms
Screenshots
Additional context
- Browser: Firefox 116
- Desktop OS: Linux
- Invidious deployed through docker, latest version from 2023-08-07
docker-compose.yml file:
version: "3"
services:
invidious:
image: quay.io/invidious/invidious:latest
restart: unless-stopped
ports:
- "127.0.0.1:8030:3000"
environment:
# Please read the following file for a comprehensive list of all available
# configuration options and their associated syntax:
# https://github.com/iv-org/invidious/blob/master/config/config.example.yml
INVIDIOUS_CONFIG: |
db:
dbname: invidious
user: kemal
password: REDACTED
host: invidious-db
port: 5432
check_tables: true
hmac_key: REDACTED
external_port: 443
domain: vid.theedgeofrage.com
https_only: true
statistics_enabled: false
use_quic: true
popular_enabled: false
captcha_enabled: false
admins: [TheEdgeOfRage]
channel_refresh_interval: 10m
dark_mode: dark
feed_menu: ["Subscriptions", "Playlists"]
default_home: Subscriptions
comments: ["youtube", "reddit"]
quality: dash
quality_dash: 1440p
unseen_only: true
healthcheck:
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
interval: 30s
timeout: 5s
retries: 2
logging:
options:
max-size: "1G"
max-file: "4"
depends_on:
- invidious-db
invidious-db:
image: docker.io/library/postgres:14
restart: unless-stopped
volumes:
- postgresdata:/var/lib/postgresql/data
- ./config/sql:/config/sql
- ./docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
environment:
POSTGRES_DB: invidious
POSTGRES_USER: kemal
POSTGRES_PASSWORD: REDACTED
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
volumes:
postgresdata: