# Apache SSL VirtualHost für NinjaCross
# Datei: /etc/apache2/sites-available/ninjaserver-ssl.conf
ServerName ninja.reptilfpv.de
DocumentRoot /var/www/html
# SSL Configuration
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/ninja.reptilfpv.de/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ninja.reptilfpv.de/privkey.pem
# Security Headers für Kamera-Zugriff
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
Header always set X-Content-Type-Options nosniff
Header always set X-Frame-Options DENY
Header always set Referrer-Policy strict-origin-when-cross-origin
# Wichtig für Kamera-Zugriff
Header always set Permissions-Policy "camera=self, microphone=()"
# Reverse Proxy zu Node.js
ProxyPreserveHost On
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
# WebSocket Support für Live-Updates
ProxyPass /socket.io/ ws://localhost:3000/socket.io/
ProxyPassReverse /socket.io/ ws://localhost:3000/socket.io/
# Logging
ErrorLog ${APACHE_LOG_DIR}/ninjaserver_ssl_error.log
CustomLog ${APACHE_LOG_DIR}/ninjaserver_ssl_access.log combined
# HTTP zu HTTPS Redirect
ServerName ninja.reptilfpv.de
Redirect permanent / https://ninja.reptilfpv.de/