# ═══════════════════════════════════════════════════════════════
#  Nginx Konfiguration – Video Download System
#  Diese Datei ins Server-Block deiner Nginx-Config einbinden.
# ═══════════════════════════════════════════════════════════════

# Option A: PHP-Methode (einfach, funktioniert immer)
# Nur sicherstellen, dass PHP genug Ressourcen bekommt:
#
# location ~ \.php$ {
#     fastcgi_read_timeout 3600;
#     fastcgi_buffering off;
#     # ... deine PHP-FPM Konfiguration
# }

# ═══════════════════════════════════════════════════════════════
# Option B: X-Accel-Redirect (empfohlen für große Dateien)
#
# Vorteile:
# - Nginx liefert die Datei direkt aus (kein PHP-Overhead)
# - Sehr speichereffizient
# - Unterstützt automatisch Range-Requests
#
# In config.php setzen: define('DOWNLOAD_METHOD', 'xaccel');
# ═══════════════════════════════════════════════════════════════

# Interner Location-Block (nicht direkt erreichbar von außen)
# location /internal-videos/ {
#     internal;
#     alias /var/data/videos/;
#     
#     # Große Dateien: Sendfile + Async IO
#     sendfile on;
#     tcp_nopush on;
#     tcp_nodelay on;
#     aio on;
#     directio 512;
#     output_buffers 1 512k;
# }

# ═══════════════════════════════════════════════════════════════
# Sicherheit: Datenbank und Config-Dateien blockieren
# ═══════════════════════════════════════════════════════════════

# location ~ /data/ {
#     deny all;
#     return 404;
# }

# location ~ /(config|database)\.php$ {
#     deny all;
#     return 404;
# }

# location ~ \.(sqlite|db|sqlite3)$ {
#     deny all;
#     return 404;
# }
