# Trajektur — Review-Verzeichnis
# Ueberschreibt bewusst die Header der Hauptseite. Die CSP oben arbeitet mit
# SHA-256-Hashes der Inline-Bloecke von index.html; hier gibt es keine Inline-
# Bloecke, deshalb reicht 'self'. Wird diese Datei vergessen, erbt das
# Verzeichnis die falsche CSP und die Seite erscheint unformatiert.

Options -Indexes -MultiViews
DirectoryIndex index.html

<IfModule mod_headers.c>
  Header always set Content-Security-Policy "default-src 'none'; script-src 'self'; style-src 'self'; font-src 'self'; img-src 'self' data:; media-src 'self'; connect-src 'self'; base-uri 'none'; form-action 'none'; frame-ancestors 'none'"
  Header always set X-Robots-Tag "noindex, nofollow, noarchive, noimageindex, nosnippet"
  Header always set Referrer-Policy "no-referrer"
  Header always set X-Content-Type-Options "nosniff"
  Header always set Permissions-Policy "geolocation=(), camera=(), microphone=(), interest-cohort=()"
  Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
  Header always set Cache-Control "private, no-store"
</IfModule>

AddType audio/mp4 .m4a
AddType audio/wav .wav
AddType application/json .json

<IfModule mod_headers.c>
  <FilesMatch "\.(m4a|wav)$">
    Header always set Accept-Ranges "bytes"
  </FilesMatch>
</IfModule>

<FilesMatch "\.(md|ps1|sh|bak)$">
  Require all denied
</FilesMatch>

ErrorDocument 403 "Kein Zugang."
ErrorDocument 404 "Nicht vorhanden."
