forked from ORGANISATION-KA-INTERNATIONALE/FEDIVERSE-OKI
ffe7f12fb9
- src/lib/server/funkwhale.ts : 50 morceaux aléatoires de mizik.o-k-i.net, filtre local, mapping vers le lecteur audio intégré (10 affichés) - Section « Morceaux » sur l'accueil entre podcast et timeline, FR/EN - Bus audio partagé (audio-bus.svelte.ts) : un seul flux à la fois entre le lecteur podcast et le lecteur musique - Lecteur audio : méta générique (artiste — album) pour les morceaux - CSP : mizik.o-k-i.net ajouté à img-src/media-src - Fix critique : la balise meta CSP embarque désormais la politique complète (lue depuis _headers) — default-src 'self' seul bloquait par intersection les images et médias des instances ; frame-ancestors retiré de la meta (ignoré hors en-tête)
45 lines
2.0 KiB
ApacheConf
45 lines
2.0 KiB
ApacheConf
# ANNU KUTE CED — configuration Apache (o2switch)
|
|
|
|
# Forcer HTTPS
|
|
RewriteEngine On
|
|
RewriteCond %{HTTPS} off
|
|
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
|
|
|
# Redirections des anciennes URLs PHP
|
|
RedirectMatch 301 ^/index\.php.*$ /
|
|
RedirectMatch 301 ^/direct\.php.*$ /direct/
|
|
RedirectMatch 301 ^/dons\.php.*$ /dons/
|
|
RedirectMatch 301 ^/mentions-legales\.php.*$ /mentions-legales/
|
|
RewriteRule ^video\.php\?uuid=([A-Za-z0-9]+).*$ /video/$1/ [R=301,L,QSD]
|
|
RewriteRule ^categories\.php\?id=([0-9]+).*$ /categories/$1/ [R=301,L,QSD]
|
|
RewriteRule ^recherche\.php\?q=(.*)$ /recherche/?q=$1 [R=301,L]
|
|
|
|
# Page 404
|
|
ErrorDocument 404 /404.html
|
|
|
|
# Headers de sécurité
|
|
<IfModule mod_headers.c>
|
|
Header always set Content-Security-Policy "style-src 'self' 'unsafe-inline'; img-src 'self' data: https://gade.o-k-i.net https://kute.o-k-i.net https://bokante.o-k-i.net https://mizik.o-k-i.net; font-src 'self'; connect-src 'self'; media-src 'self' https://gade.o-k-i.net https://kute.o-k-i.net https://bokante.o-k-i.net https://mizik.o-k-i.net; frame-src https://gade.o-k-i.net; frame-ancestors 'none'; base-uri 'self'; form-action 'self'; object-src 'none'"
|
|
Header always set Strict-Transport-Security "max-age=31536000"
|
|
Header always set X-Frame-Options "DENY"
|
|
Header always set X-Content-Type-Options "nosniff"
|
|
Header always set Referrer-Policy "strict-origin-when-cross-origin"
|
|
Header always set Permissions-Policy "accelerometer=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=()"
|
|
</IfModule>
|
|
|
|
# Cache immutable des assets fingerprintés et des fonts
|
|
<IfModule mod_expires.c>
|
|
ExpiresActive On
|
|
ExpiresByType font/woff2 "access plus 1 year"
|
|
ExpiresByType image/png "access plus 1 week"
|
|
ExpiresByType image/x-icon "access plus 1 week"
|
|
</IfModule>
|
|
|
|
<IfModule mod_rewrite.c>
|
|
RewriteCond %{REQUEST_URI} ^/(_app|fonts)/ [NC]
|
|
RewriteRule .* - [E=CACHE_IMMUTABLE:1]
|
|
</IfModule>
|
|
<IfModule mod_headers.c>
|
|
Header set Cache-Control "public, max-age=31536000, immutable" env=CACHE_IMMUTABLE
|
|
</IfModule>
|