feat: support du déploiement sous sous-chemin (paths.base)
- Liens et assets via {base}, polices déplacées vers src/lib/assets (hachage Vite)
- Service worker base-aware, précache sur les pages prérendues
- CSP hash documentée : l'hôte ne doit pas fixer script-src
- Docs : déploiement Apache/YunoHost (DEPLOYMENT, APACHE_AUTOINDEX)
This commit is contained in:
@@ -10,6 +10,26 @@ const config = {
|
||||
adapter: adapter({
|
||||
fallback: '404.html'
|
||||
}),
|
||||
// Déployé à la racine de https://chatcontrol.o-k-i.net/ (YunoHost) :
|
||||
// pas de paths.base. Pour servir sous un sous-chemin, ajouter ici
|
||||
// paths: { base: '/prefixe' } et adapter les règles du serveur.
|
||||
// Le script de démarrage SvelteKit est inline (il embarque les données de
|
||||
// la page) : une CSP `script-src 'self'` posée en en-tête HTTP le bloque
|
||||
// et tue l'hydratation (recherche et filtres morts — vécu sur o2switch).
|
||||
// En mode hash, chaque page prérendue porte une <meta> CSP avec l'empreinte
|
||||
// de SON script inline. L'en-tête serveur ne doit donc plus fixer
|
||||
// script-src (voir DEPLOYMENT.md §2/§3).
|
||||
csp: {
|
||||
mode: 'hash',
|
||||
directives: {
|
||||
'script-src': ['self']
|
||||
}
|
||||
},
|
||||
// Un seul bundle JS + une seule feuille CSS au lieu de ~30 chunks :
|
||||
// moins de requêtes par page (3G, anti-flood o2switch qui répond 429).
|
||||
output: {
|
||||
bundleStrategy: 'single'
|
||||
},
|
||||
prerender: {
|
||||
handleHttpError: 'fail'
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user