> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify-mintlify-0dbda2de.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# AWS Route 53 et CloudFront

> Déployez votre documentation Mintlify sur un sous-chemin AWS en utilisant Route 53 pour le routage DNS et CloudFront comme CDN avec des fonctions Lambda@Edge.

Pour héberger votre documentation à un sous-chemin tel que `yoursite.com/docs` avec AWS Route 53 et CloudFront, vous devez configurer votre fournisseur DNS pour qu’il pointe vers votre distribution CloudFront.

Avant de configurer AWS, définissez votre chemin de base dans votre Dashboard :

1. Accédez à la page [Configuration du domaine personnalisé](https://app.mintlify.com/settings/deployment/custom-domain) dans votre Dashboard.
2. Activez le bouton **Host at** et saisissez votre chemin de base. Par exemple, `/docs` ou `/help`.
3. Saisissez votre domaine.
4. Saisissez votre chemin de base.
5. Cliquez sur **Add domain**.

<div id="overview">
  ## Vue d'ensemble
</div>

<Note>
  Les exemples suivants utilisent le chemin de base `/docs`. Si vous utilisez un chemin de base différent, remplacez `/docs` par votre chemin de base.
</Note>

Dirigez le trafic vers ces chemins avec une stratégie de mise en cache (**Cache Policy**) de **CachingDisabled** :

* `/.well-known/acme-challenge/*` - Requis pour la vérification des certificats Let's Encrypt
* `/.well-known/vercel/*` - Requis pour la vérification du domaine
* `/docs/*` - Requis pour le routage par sous-chemin
* `/docs/` - Requis pour le routage par sous-chemin

Dirigez le trafic vers ce chemin avec une stratégie de mise en cache (**Cache Policy**) de **CachingEnabled** :

* `/mintlify-assets/_next/static/*`
* `Default (*)` - La page d'accueil de votre site web

Tous les Behaviors doivent avoir une **origin request policy** de `AllViewerExceptHostHeader`.

Les Behaviors de votre sous-chemin doivent autoriser toutes les méthodes HTTP. CloudFront n'autorise que les requêtes `GET` et `HEAD` par défaut, ce qui bloque les requêtes `POST` que Mintlify utilise pour les analytiques et d'autres fonctionnalités interactives.

<img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/all-behaviors.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=d4493fae603ee052ceb2f7536eeca226" alt="Page CloudFront &#x22;Behaviors&#x22; avec 4 behaviors : /docs/*, /docs, Default, et /.well-known/*." width="1603" height="365" data-path="images/cloudfront/all-behaviors.png" />

<div id="create-cloudfront-distribution">
  ## Créer une distribution CloudFront
</div>

1. Accédez à [CloudFront](https://aws.amazon.com/cloudfront) dans la console AWS.
2. Sélectionnez **Create distribution**.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/create-distribution.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=28f0cc0e045980c0987d471c765ab9f5" alt="Page des distributions CloudFront avec le bouton « Create distribution » mis en évidence." width="3024" height="922" data-path="images/cloudfront/create-distribution.png" />
</Frame>

3. Pour le domaine d’origine, saisissez `[SUBDOMAIN].mintlify.site`, où `[SUBDOMAIN]` est le sous-domaine propre à votre projet.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/origin-name.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=b269b675b07183d8fd895806ab40417a" alt="Page « Create distribution » de CloudFront affichant « acme.mintlify.site » comme domaine d’origine." width="1495" height="1036" data-path="images/cloudfront/origin-name.png" />
</Frame>

4. Pour « Web Application Firewall (WAF) », activez les protections de sécurité.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/enable-security-protections.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=5fc8fa237acc6c8a43180e2ad6603ea0" alt="Options du Web Application Firewall (WAF) avec « Enable security protections » sélectionné." width="1482" height="877" data-path="images/cloudfront/enable-security-protections.png" />
</Frame>

<Note>
  Les règles WAF peuvent bloquer les requêtes `POST` que Mintlify utilise pour les analytiques et d'autres fonctionnalités interactives. Si les analytiques n'apparaissent plus dans votre tableau de bord après avoir activé WAF, consultez les journaux WAF pour repérer les requêtes bloquées vers les chemins sous `/docs/_mintlify/`.
</Note>

5. Laissez les autres paramètres avec leurs valeurs par défaut.
6. Sélectionnez **Create distribution**.

<div id="add-default-origin">
  ## Ajouter une origine par défaut
</div>

1. Après avoir créé la distribution, accédez à l’onglet « Origins ».

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/origins.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=484fbcad0f08b3b00489cde924bbeee5" alt="Une distribution CloudFront avec l’onglet « Origins » mis en évidence." width="3024" height="1466" data-path="images/cloudfront/origins.png" />
</Frame>

2. Trouvez votre URL d’environnement de staging qui reflète le domaine principal. Cela varie selon l’hébergeur de votre page d’accueil. Par exemple, l’URL de staging de Mintlify est [mintlify-landing-page.vercel.app](https://mintlify-landing-page.vercel.app).

<Info>
  Si Webflow héberge votre page d’accueil, utilisez l’URL de staging de Webflow. Elle se terminera par `.webflow.io`.

  Si vous utilisez Vercel, utilisez le domain `.vercel.app` disponible pour chaque projet.
</Info>

3. Créez une nouvelle Origin et ajoutez votre URL de staging comme « Origin domain ».

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/default-origin.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=07e25ce598c7ab12da68b512c7a85944" alt="Page CloudFront « Create origin » avec le champ de saisie « Origin domain » mis en évidence." width="3024" height="1332" data-path="images/cloudfront/default-origin.png" />
</Frame>

À ce stade, vous devriez avoir deux Origins : une avec `[SUBDOMAIN].mintlify.site` et une autre avec votre URL de staging.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/final-origins.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=a0d3b31362785dc28bb6d20c12aedddd" alt="Page CloudFront « Origins » avec deux origins : une pour mintlify et une autre pour mintlify-landing-page." width="1230" height="690" data-path="images/cloudfront/final-origins.png" />
</Frame>

<div id="set-behaviors">
  ## Définir les comportements
</div>

Les comportements dans CloudFront permettent de contrôler la logique des sous-chemins. Globalement, nous voulons mettre en place la logique suivante :

* **Si un utilisateur arrive sur votre sous-chemin personnalisé**, le rediriger vers `[SUBDOMAIN].mintlify.site`.
* **Si un utilisateur arrive sur une autre page**, le diriger vers la page d’accueil actuelle.

1. Accédez à l’onglet « Behaviors » de votre distribution CloudFront.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/behaviors.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=9b3c6c83dbaf40870d63867754c42730" alt="Onglet « Behaviors » de CloudFront mis en évidence." width="3024" height="1384" data-path="images/cloudfront/behaviors.png" />
</Frame>

2. Cliquez sur le bouton **Create behavior** et créez les comportements suivants.

<div id="well-known">
  ### `/.well-known/*`
</div>

Créez des comportements pour les chemins de vérification de domaine Vercel avec un **Path pattern** de `/.well-known/*` et définissez **Origin and origin groups** sur l’URL de vos docs.

Pour la « Cache policy », sélectionnez **CachingDisabled** afin de garantir que ces requêtes de vérification passent sans mise en cache.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/well-known-policy.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=1617e9cb64eed64d0de1cf148421b38e" alt="Page CloudFront « Create behavior » avec un « Path pattern » de « /.well-known/* » et « Origin and origin groups » pointant vers l’URL d’environnement de préproduction." width="1413" height="1098" data-path="images/cloudfront/well-known-policy.png" />
</Frame>

<Info>
  Si `/.well-known/*` est trop générique, vous pouvez le restreindre à au moins 2 comportements pour Vercel :

  * `/.well-known/vercel/*` - Requis pour la vérification de domaine Vercel
  * `/.well-known/acme-challenge/*` - Requis pour la vérification de certificat Let's Encrypt
</Info>

<div id="your-subpath">
  ### Votre sous-chemin
</div>

Créez un comportement avec un **Path pattern** défini sur le sous-chemin de votre choix, par exemple `/docs`, avec **Origin and origin groups** pointant vers l’URL `.mintlify.site` (dans notre cas `acme.mintlify.site`).

* Définissez « Cache policy » sur **CachingDisabled**.
* Définissez « Origin request policy » sur **AllViewerExceptHostHeader**.
* Définissez « Viewer Protocol Policy » sur **Redirect HTTP to HTTPS**.
* Définissez « Allowed HTTP methods » sur **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE**.

<Warning>
  CloudFront n'autorise que les requêtes `GET` et `HEAD` par défaut. Si vous n'autorisez pas toutes les méthodes HTTP, CloudFront rejette les requêtes `POST` que Mintlify utilise pour les analytiques, et votre tableau de bord n'affichera aucune vue de page même si votre documentation se charge normalement.
</Warning>

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/behavior-1.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=8f0dbaf0c3bcfceff09e24c72a63360d" alt="Page CloudFront « Create behavior » avec un « Path pattern » de « /docs/* » et « Origin and origin groups » pointant vers l’URL acme.mintlify.site." width="1520" height="1117" data-path="images/cloudfront/behavior-1.png" />
</Frame>

<div id="your-subpath-with-wildcard">
  ### Votre sous-chemin avec caractère générique
</div>

Créez un comportement avec un **Path pattern** correspondant au sous-chemin de votre choix suivi de `/*`, par exemple `/docs/*`, et des **Origin and origin groups** pointant vers la même URL en `.mintlify.site`.

Ces paramètres doivent correspondre exactement au comportement de votre sous-chemin de base, à l’exception du **Path pattern**.

* Définissez "Cache policy" sur **CachingDisabled**.
* Définissez "Origin request policy" sur **AllViewerExceptHostHeader**.
* Définissez "Viewer protocol policy" sur **Redirect HTTP to HTTPS**.
* Définissez "Allowed HTTP methods" sur **GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE**.

<div id="mintlify-assets_nextstatic">
  ### `/mintlify-assets/_next/static/*`
</div>

* Définissez la « Cache policy » sur **CachingOptimized**
* Définissez la « Origin request policy » sur **AllViewerExceptHostHeader**
* Définissez la « Viewer protocol policy » sur **Redirect HTTP to HTTPS**

<div id="default">
  ### `Default (*)`
</div>

Enfin, nous allons modifier le comportement `Default (*)`.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/default-behavior-1.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=06c8859a0733add0147d01979098fd4e" alt="Une distribution CloudFront avec le comportement « Default (*) » sélectionné et le bouton Edit mis en évidence." width="3024" height="1406" data-path="images/cloudfront/default-behavior-1.png" />
</Frame>

1. Modifiez le paramètre **Origin and origin groups** du comportement par défaut pour utiliser l’URL d’environnement de préproduction (dans notre cas `mintlify-landing-page.vercel.app`).

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/default-behavior-2.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=87ea99c3ae153a72654dbaa1dea670f6" alt="Page CloudFront « Edit behavior » avec le champ de saisie « Origin and origin groups » mis en évidence." width="3024" height="1298" data-path="images/cloudfront/default-behavior-2.png" />
</Frame>

2. Cliquez sur **Enregistrer les modifications**.

<div id="check-behaviors-are-set-up-correctly">
  ### Vérifiez que les comportements sont correctement configurés
</div>

Si vous suivez les étapes précédentes, vos comportements devraient être les suivants:

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/all-behaviors.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=d4493fae603ee052ceb2f7536eeca226" alt="Page « Behaviors » de CloudFront avec 4 comportements : /docs/*, /docs, Default et /.well-known/*." width="1603" height="365" data-path="images/cloudfront/all-behaviors.png" />
</Frame>

<div id="preview-distribution">
  ## Aperçu de la distribution
</div>

Vous pouvez maintenant vérifier si vous avez correctement configuré votre distribution en accédant à l’onglet « General » et en ouvrant l’URL **Distribution domain name**.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/preview-distribution.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=ca41ccbb9c334d75b9f8199b3ea231eb" alt="Onglet CloudFront « General » avec l’URL « Distribution domain name » mise en évidence." width="3024" height="1394" data-path="images/cloudfront/preview-distribution.png" />
</Frame>

Toutes les pages devraient renvoyer vers votre page d’accueil principale. En revanche, si vous ajoutez à l’URL le sous-chemin de votre choix — par exemple `/docs` — vous devriez être redirigé vers votre instance de documentation Mintlify.

<div id="connect-with-route-53">
  ## Connecter avec Route 53
</div>

Nous allons maintenant faire pointer votre domaine principal vers la distribution CloudFront.

<Note>
  Pour cette section, vous pouvez également consulter le guide officiel d’AWS sur la [configuration
  d’Amazon Route 53 pour acheminer le trafic vers une distribution
  CloudFront](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html#routing-to-cloudfront-distribution-config)
</Note>

1. Accédez à [Route 53](https://aws.amazon.com/route53) dans la console AWS.
2. Accédez à la « Hosted zone » de votre domaine principal.
3. Sélectionnez **Create record**.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/route53-create-record.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=27353f4049914a563641f59319777f09" alt="Page « Records » de Route 53 avec le bouton « Create record » mis en évidence." width="1540" height="1238" data-path="images/cloudfront/route53-create-record.png" />
</Frame>

4. Activez `Alias`, puis, pour **Route traffic to**, choisissez l’option `Alias to CloudFront distribution`.

<Frame>
  <img src="https://mintcdn.com/mintlify-mintlify-0dbda2de/UXV9rArB55gNNkPg/images/cloudfront/create-record-alias.png?fit=max&auto=format&n=UXV9rArB55gNNkPg&q=85&s=dff650c7356ebde621949f786189312b" alt="Page « Create record » de Route 53 avec l’interrupteur « Alias » et le menu « Route traffic to » mis en évidence." width="3024" height="1494" data-path="images/cloudfront/create-record-alias.png" />
</Frame>

5. Sélectionnez **Create records**.

<Note>
  Vous devrez peut-être supprimer l’enregistrement A existant s’il y en a un.
</Note>

Votre documentation est maintenant en ligne au sous-chemin choisi de votre domaine principal.

<Note>
  Après avoir déployé vos modifications, votre documentation est généralement accessible à votre sous-chemin en quelques minutes. Si votre configuration inclut des changements DNS, la propagation peut prendre de 1 à 4 heures, et dans de rares cas jusqu’à 48 heures. Si votre documentation n’est pas immédiatement accessible, patientez avant d’essayer de résoudre le problème.
</Note>
