a7b81e2ff4
Deciso da Adriano il 03/09/2026: il dominio del cliente resta su Aruba e non si tocca, le piattaforme partono da un sottodominio nostro. Scelto l'host che risolveva gia' e aveva gia' il certificato - fino a oggi faceva 308 verso l'apex del sito - invece di aspettare un record DNS nuovo. Tre modifiche coordinate, che vanno insieme o l'host resta senza padrone: - allowedDomains dell'app: aggiunto l'host temporaneo accanto a quello definitivo. Senza, dietro Traefik il CSRF di Astro respinge ogni POST con 403 e il login sembra rifiutare le credenziali. - router del container: Host(insanitylab.tielogic.xyz) - compose del sito: quell'host esce dal router di redirect (www continua) Quando il record A "apps" esistera' su Aruba si tengono doppi per un po', invece di spostare di netto un indirizzo che qualcuno ha gia' salvato. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EndnceRA5WnA6rvA5iV9WL
28 lines
1.1 KiB
JavaScript
28 lines
1.1 KiB
JavaScript
import { defineConfig } from 'astro/config';
|
|
import node from '@astrojs/node';
|
|
import react from '@astrojs/react';
|
|
|
|
export default defineConfig({
|
|
site: 'https://apps.insanitylab.it',
|
|
output: 'server',
|
|
|
|
// ⚠️ Dietro Traefik il TLS termina al proxy: senza allowedDomains Astro ignora
|
|
// X-Forwarded-Proto/Host e il checkOrigin CSRF respinge OGNI POST con 403 — cioè
|
|
// il login smette di funzionare, e l'errore sembra "credenziali sbagliate".
|
|
// Stessa configurazione del sito, con l'host di quest'app.
|
|
security: {
|
|
allowedDomains: [
|
|
// L'host definitivo, quando il record A su Aruba ci sara'.
|
|
{ hostname: 'apps.insanitylab.it', protocol: 'https' },
|
|
// ⚠️ L'host TEMPORANEO (03/09/2026): il dominio del cliente resta su Aruba e le aree
|
|
// riservate partono da un sottodominio nostro, che risolve gia'. Finche' e' in uso
|
|
// deve stare qui: senza, dietro Traefik il controllo CSRF di Astro respinge ogni POST
|
|
// con 403 e il login sembra rifiutare le credenziali.
|
|
{ hostname: 'insanitylab.tielogic.xyz', protocol: 'https' },
|
|
],
|
|
},
|
|
|
|
adapter: node({ mode: 'standalone' }),
|
|
integrations: [react()],
|
|
});
|