Compare commits

..

2 Commits

Author SHA1 Message Date
lamp 40bda207e1 skip streaming manifests 2023-08-01 00:35:51 -07:00
lamp ea8bf8fa1e porkbun dns 2023-07-31 21:34:04 -07:00
6 changed files with 19 additions and 75 deletions
+2 -1
View File
@@ -1,3 +1,4 @@
.vscode .vscode
__pycache__ __pycache__
test.mp4 test.mp4
secrets.env
+6 -1
View File
@@ -15,7 +15,12 @@
:80 { :80 {
#nl.u2b.cx u2b.cx { #nl.u2b.cx u2b.cx {
log tls {
dns porkbun {
api_key {env.PORKBUN_API_KEY}
api_secret_key {env.PORKBUN_API_SECRET}
}
}
handle_path /proxy/* { handle_path /proxy/* {
@gv path_regexp gvurl ^\/([a-z0-9-]+\.googlevideo\.com) @gv path_regexp gvurl ^\/([a-z0-9-]+\.googlevideo\.com)
handle @gv { handle @gv {
+3 -1
View File
@@ -1,4 +1,6 @@
FROM caddy:2.6-builder AS builder FROM caddy:2.6-builder AS builder
RUN xcaddy build --with github.com/caddyserver/transform-encoder RUN xcaddy build \
--with github.com/caddyserver/transform-encoder \
--with github.com/caddy-dns/porkbun
FROM caddy:2.6 FROM caddy:2.6
COPY --from=builder /usr/bin/caddy /usr/bin/caddy COPY --from=builder /usr/bin/caddy /usr/bin/caddy
+7 -15
View File
@@ -11,26 +11,18 @@ services:
- PORT=8080 - PORT=8080
- PROXY=/proxy/ - PROXY=/proxy/
command: python server.py command: python server.py
# caddy: caddy:
# image: caddy:2.6 build: caddy
# restart: always
# ports:
# - "80:80"
# - "443:443"
# - "443:443/udp"
# volumes:
# - ./Caddyfile:/etc/caddy/Caddyfile
# - caddy_data:/data
# - caddy_config:/config
nginx:
image: nginx:1.25
restart: always restart: always
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
ports: ports:
- "80:80" - "80:80"
- "443:443" - "443:443"
- "443:443/udp" - "443:443/udp"
volumes:
- ./caddy/Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
env_file: secrets.env
volumes: volumes:
caddy_data: caddy_data:
caddy_config: caddy_config:
-56
View File
@@ -1,56 +0,0 @@
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log notice;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
log_format main '$time_local $remote_addr "$request" $status "$http_user_agent"';
access_log /var/log/nginx/access.log main;
resolver 8.8.8.8 ipv6=off;#until I can get ipv6 on the new host
server {
listen 80;
location /proxy/ {
limit_except GET { deny all; }
location ~^/proxy/([a-z0-9-]+)\.googlevideo\.com/videoplayback {
#return 200 "$uri\n\n$request_uri\n\n$query_string\n\nhttps://$1/$2";
proxy_pass https://$1.googlevideo.com/videoplayback?$query_string;
#proxy_redirect ~https://([a-z0-9-]+).googlevideo.com/ /proxy/$1.googlevideo.com/;
proxy_redirect https:// /proxy/;
}
return 403;
}
location = / {
return 301 https://www.u2b.cx/;
}
location = /favicon.ico {
return 404;
}
location /. {
return 403;
}
location = /robots.txt {
add_header Content-Type text/plain;
return 200 "User-agent: *\nDisallow: /\n";
}
if ($request_method != GET) {
return 403;
}
location / {
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://app:8080;
}
}
}
+1 -1
View File
@@ -70,7 +70,7 @@ class Handler(BaseHTTPRequestHandler):
'event': Event(), 'event': Event(),
'expire': datetime.now() + timedelta(hours=5) 'expire': datetime.now() + timedelta(hours=5)
} }
with YoutubeDL() as ydl: with YoutubeDL({'extractor_args': {'youtube': {'skip': ['dash', 'hls']}}}) as ydl:
info = ydl.extract_info(query, download=False) info = ydl.extract_info(query, download=False)
selection = info selection = info