Reindirizzamenti in Astro

Autore:Lars Nyström
Aggiornato:9 giu 2025

Reindirizzamenti in Astro

È possibile configurare i reindirizzamenti nel file astro.config.ts utilizzando l'opzione redirects.

Reindirizzamenti in Astro Config

import { defineConfig } from 'astro/config';

export default defineConfig({ Numero di redirect: { '/old-page': '/nuova-pagina', }, });


### Redirects in Server Endpoints

You can also return a redirect from a Server Endpoint using the `redirect` utility:


src/pages/links/[id].ts
export async function GET({ params, redirect }: APIRoute) {
  return redirect('/redirect-path', 307);
}

Reindirizzamenti in Componenti

È possibile reindirizzare da componenti Astro con Astro.redirect():

src/pages/account.astro
import { isLoggedIn } from '../utils';

const cookie = Astro.request.headers.get('cookie');

if (!isLoggedIn(cookie)) {
  return Astro.redirect('/login');
}

<h1>You can only see this page while logged in</h1>

Astro Middleware su Esadax

Viene eseguito prima che una richiesta venga elaborata in un sito, consentendo di modificare le risposte alle richieste degli utenti.

  • Viene eseguito su tutte le richieste, ma può essere esteso a percorsi specifici tramite una configurazione del matcher.
  • Utilizza il leggero Edge Runtime di Esadax per mantenere bassi i costi e veloci le risposte.

Memoria cache

Esadax memorizza automaticamente nella cache i file statici all'Edge dopo la prima richiesta e li memorizza fino a 31 giorni sull'Edge Network di Esadax. Anche il contenuto dinamico può essere memorizzato nella cache e il comportamento della cache dinamica e statica può essere configurato con le intestazioni Cache-Control.

Esempio: pubblicazione di contenuti obsoleti

Il seguente componente Astro mostrerà un nuovo tempo ogni 10 secondi. Lo fa impostando un'età massima di 10 secondi sui contenuti della pagina, quindi servendo contenuti obsoleti mentre il nuovo contenuto viene renderizzato sul server quando tale età viene superata.

src/pages/ssr-with-swr-caching.astro
Astro.response.headers.set('Cache-Control', 's-maxage=10, stale-while-revalidate');
const time = new Date().toLocaleTimeString();

<h1>{time}</h1>

Intestazioni CDN Cache-Control

Puoi anche controllare come si comporta la cache su qualsiasi CDN che potresti utilizzare al di fuori della rete Edge di Esadax con le intestazioni di controllo della cache CDN.

src/pages/ssr-with-swr-caching.astro
Astro.response.headers.set('Esadax-CDN-Cache-Control', 'max-age=3600');
Astro.response.headers.set('CDN-Cache-Control', 'max-age=60');

const time = new Date().toLocaleTimeString();

<h1>{time}</h1>

Caching su Esadax

Ottimizza e memorizza automaticamente nella cache le risorse per prestazioni ottimali.

  • Non richiede servizi aggiuntivi da procurare o configurare.
  • Supporta rollout con zero downtime.