AWS Route 53 et CloudFront
Proxy le trafic /docs via AWS CloudFront et Route 53 vers votre site Jamdesk. Inclut la configuration de la distribution, la configuration de l'origine et les règles de comportement du cache.
Configurez une distribution CloudFront pour transférer /docs/* vers votre site Jamdesk, avec Route 53 pour le DNS. Comptez environ 15 minutes.
Prérequis
- Un compte AWS avec accès à CloudFront et Route 53
- Votre domaine géré dans Route 53 (ou la possibilité de mettre à jour le DNS ailleurs)
- Votre sous-domaine Jamdesk (trouvé dans les paramètres du dashboard)
Étape 1 : Créer une distribution CloudFront
- Ouvrez la console CloudFront
- Cliquez sur Create Distribution
- Configurez l'origine :
| Paramètre | Valeur |
|---|---|
| Origin domain | YOUR_SLUG.jamdesk.app |
| Protocol | HTTPS only |
| Name | jamdesk-docs-origin |
Remplacez YOUR_SLUG par votre sous-domaine Jamdesk réel.
Étape 2 : Configurer les paramètres d'origine
Dans les paramètres d'origine, ajoutez des en-têtes personnalisés pour identifier votre domaine :
| Nom de l'en-tête | Valeur |
|---|---|
X-Forwarded-Host | yoursite.com |
X-Jamdesk-Forwarded-Host | yoursite.com |
Ces en-têtes indiquent à Jamdesk quel domaine effectue la requête. L'en-tête X-Jamdesk-Forwarded-Host est requis pour la vérification du domaine.
Votre domaine doit être vérifié dans le dashboard Jamdesk avant que CloudFront puisse servir du contenu. Complétez le processus de vérification DNS après avoir ajouté votre domaine.
Étape 3 : Créer des comportements de cache
Ajoutez des comportements pour router /docs/* et les requêtes d'assets vers votre origine Jamdesk :
- Accédez à l'onglet Behaviors
- Cliquez sur Create Behavior
- Créez trois comportements avec ces paramètres :
| Path pattern | Origine | Cache policy | Origin request policy |
|---|---|---|---|
/docs/* | jamdesk-docs-origin | CachingOptimized | AllViewerExceptHostHeader |
/_next/* | jamdesk-docs-origin | CachingOptimized | AllViewerExceptHostHeader |
/_jd/* | jamdesk-docs-origin | CachingOptimized | AllViewerExceptHostHeader |
Définissez la Viewer protocol policy sur Redirect HTTP to HTTPS pour les trois.
Les comportements /_next/* et /_jd/* sont requis pour que les assets statiques Next.js (JS, CSS) et les ressources Jamdesk (polices, images, branding) se chargent correctement.
La politique AllViewerExceptHostHeader est obligatoire. Elle transfère tous les en-têtes sauf Host, permettant à Jamdesk de recevoir les informations de requête nécessaires.
Étape 4 : Ajouter un nom de domaine alternatif
- Dans l'onglet General, cliquez sur Edit
- Sous Alternate domain name (CNAME), ajoutez
yoursite.com - Sélectionnez ou demandez un certificat SSL pour votre domaine
Étape 5 : Configurer Route 53
Créez un enregistrement alias pointant vers votre distribution CloudFront :
- Ouvrez la console Route 53
- Sélectionnez votre zone hébergée
- Cliquez sur Create Record
- Configurez :
| Paramètre | Valeur |
|---|---|
| Record name | yoursite.com (ou laissez vide pour l'apex) |
| Record type | A |
| Alias | Yes |
| Route traffic to | CloudFront distribution |
| Distribution | Sélectionnez votre distribution |
Étape 6 : Vérifier
Après la propagation DNS (généralement 5 à 15 minutes), visitez https://yoursite.com/docs pour confirmer que votre documentation se charge correctement.
Résumé complet de la configuration CloudFront
Distribution Settings:
├── Origin: YOUR_SLUG.jamdesk.app
│ ├── Custom Header: X-Forwarded-Host = yoursite.com
│ └── Custom Header: X-Jamdesk-Forwarded-Host = yoursite.com
├── Behavior: /docs/*
│ ├── Cache Policy: CachingOptimized
│ └── Origin Request Policy: AllViewerExceptHostHeader
├── Behavior: /_next/*
│ ├── Cache Policy: CachingOptimized
│ └── Origin Request Policy: AllViewerExceptHostHeader
├── Behavior: /_jd/*
│ ├── Cache Policy: CachingOptimized
│ └── Origin Request Policy: AllViewerExceptHostHeader
└── Alternate Domain: yoursite.com (with SSL certificate)
Dépannage
Assurez-vous que le domaine d'origine est exactement YOUR_SLUG.jamdesk.app sans le préfixe https://.
Vérifiez que la Viewer protocol policy est définie sur « Redirect HTTP to HTTPS » et que votre certificat SSL est valide.
Créez une invalidation CloudFront pour /docs/* afin de vider le contenu mis en cache après la publication des modifications.
Si vous voyez « Domain is not authorized to serve this content » :
- Vérifiez que votre domaine est enregistré dans le dashboard Jamdesk
- Complétez la vérification DNS (enregistrement TXT) pour votre domaine
- Assurez-vous que les en-têtes personnalisés
X-Forwarded-HostetX-Jamdesk-Forwarded-Hostsont définis dans votre configuration d'origine - Vérifiez que votre domaine est associé au bon projet
Le domaine doit être vérifié avant que CloudFront puisse servir la documentation.
