Redirections dans Astro

Auteur:Lars Nyström
Mise à jour:9 juin 2025

Redirection dans Astro

Vous pouvez configurer les redirections dans votre fichier astro.config.ts en utilisant l'option redirects.

Redirections dans Astro Config

import { defineConfig } from 'astro/config';

export default defineConfig({ redirects: { '/old-page': '/nouvelle-page', }, });


### 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);
}

Redirections dans les composants

Vous pouvez rediriger à partir des composants Astro avec 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 sur Esadax

S'exécute avant le traitement d'une requête sur un site, ce qui vous permet de modifier les réponses aux requêtes des utilisateurs.

  • S'exécute sur toutes les requêtes, mais peut être étendu à des chemins spécifiques via une configuration de matcher.
  • Utilise l'Edge Runtime léger d'Esadax pour maintenir les coûts bas et les réponses rapides.

Mise en cache

Esadax met automatiquement en cache les fichiers statiques à la périphérie après la première demande et les stocke jusqu'à 31 jours sur le réseau Edge d'Esadax. Le contenu dynamique peut également être mis en cache, et le comportement de mise en cache dynamique et statique peut être configuré avec les en-têtes Cache-Control.

Exemple : Diffusion de contenu obsolète

Le composant Astro suivant affichera une nouvelle heure toutes les 10 secondes. Il le fait en définissant un âge maximum de 10 secondes sur le contenu de la page, puis en servant du contenu obsolète tandis que du nouveau contenu est rendu sur le serveur lorsque cet âge est dépassé.

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>

En-têtes CDN Cache-Control

Vous pouvez également contrôler le comportement du cache sur tous les CDN que vous pouvez utiliser en dehors du réseau Edge d'Esadax avec les en-têtes de contrôle de 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>

Mise en cache sur Esadax

Optimise et met automatiquement en cache les ressources pour des performances optimales.

  • Ne nécessite aucun service supplémentaire à acquérir ou à configurer.
  • Prend en charge les déploiements sans temps d'arrêt.