CloudFront (BYOCDN)
Cette configuration achemine le trafic dynamique (requêtes provenant de robots d’IA et d’agents utilisateurs LLM) vers le service principal Edge Optimize (live.edgeoptimize.net). Les visiteurs humains et les robots d'optimisation du moteur de recherche continuent d'être servis depuis votre origine comme d'habitude. Pour tester la configuration, une fois la configuration terminée, recherchez l’en-tête x-edgeoptimize-request-id dans la réponse.
Conditions préalables
Avant de configurer CloudFront, vérifiez que vous disposez des éléments suivants :
- Une distribution CloudFront existante desservant votre site web.
- Les autorisations IAM d’AWS pour créer des fonctions Lambda, des rôles IAM, des distributions CloudFront et des politiques de cache.
- Fin du processus d’intégration de LLM Optimizer.
- Transfert du journal CDN vers LLM Optimizer terminé.
- Clé d’API Edge Optimize récupérée à partir de l’interface utilisateur de LLM Optimizer.
Procédure de récupération de votre clé API :
-
Accédez à Configuration du client et sélectionnez l’onglet Configuration du réseau CDN.
-
Sous Routage du trafic AI pour déployer des optimisations, cochez la case Déployer des optimisations sur des agents AI.
-
Copiez la clé API et suivez les étapes de configuration du routage ci-dessous.
note note NOTE À ce stade, le statut peut afficher une croix rouge indiquant que la configuration n’est pas encore terminée. Cela est attendu : une fois que vous avez terminé la configuration de routage ci-dessous et que le trafic des robots d’IA commence à circuler, le statut se met à jour vers une coche verte confirmant que le routage est activé avec succès.
De plus, si vous avez besoin d’aide pour les étapes ci-dessus, contactez votre équipe de compte Adobe ou votre llmo-at-edge@adobe.com.
Étape 1 : Créer une origine Edge Optimize
Navigation : Console AWS > CloudFront > Distributions > [Votre distribution] > Onglet Origines
-
Cliquez sur Créer l’origine.
-
Configurez l’origine :
- Domaine d’origine :
live.edgeoptimize.net - Nom :
EdgeOptimize_Origin
- Domaine d’origine :
-
Laissez tous les autres champs avec leurs valeurs par défaut.
-
Ajouter des en-têtes personnalisés :
table 0-row-2 1-row-2 2-row-2 En-tête Valeur x-edgeoptimize-api-keyVotre clé API x-forwarded-hostwww.example.comRemplacez
www.example.compar le domaine et laYour API keyde votre site web réel à l’aide de la clé API Edge Optimize fournie par votre représentant Adobe. -
Cliquez sur Créer l’origine.
Étape 2 : créer une fonction de requête de visionneuse
Navigation : Console AWS > CloudFront > Fonctions
-
Cliquez sur Créer une fonction.
-
Configurez les éléments suivants :
- Nom :
edgeoptimize-routing - Runtime:
cloudfront-js-2.0
- Nom :
-
Remplacez le code par défaut par le code de viewer-request.js.
Avant de publier, personnalisez les valeurs suivantes dans le code :
YOUR_DEFAULT_ORIGIN— Remplacez par le nom de votre origine par défaut existante (disponible dans CloudFront > Distributions > [Votre distribution] > Onglet Origines).TARGETED_PATHS: définissez cette option surnullpour cibler toutes les pages HTML ou sur un tableau de chemins spécifiques, par exemple['/', '/products', '/about'].
-
Cliquez sur Enregistrer les modifications > Fonction de publication.
Étape 3 : Configurer la politique de cache
Navigation : Console AWS > CloudFront > Distributions > [Votre Distribution] > Comportements
Vérifiez la politique de cache actuellement associée à votre comportement. Cliquez sur Modifier sur votre comportement et consultez la section Clé de cache et demandes d’origine pour identifier votre scénario :
- Scénario A (hérité) : un bouton radio intitulé Paramètres de cache hérités sélectionné s’affiche. Il n’existe pas de liste déroulante de nom de politique ; à la place, vous voyez les paramètres TTL et d’en-tête intégrés.
- Scénario B (Politique personnalisée) : vous voyez Politique de mise en cache sélectionnée avec un nom de politique que vous ou votre équipe avez créé (et non une politique fournie par AWS).
- Scénario C (Politique gérée) : vous voyez Politique de mise en cache sélectionnée avec un nom fourni par AWS, tel que
CachingOptimized,CachingDisabledouCachingOptimizedForUncompressedObjects; elle ne peut pas être modifiée.
Scénario A : paramètres de cache hérités
Si votre comportement utilise les paramètres de cache hérités :
-
Sous Clé de cache et demandes d’origine, vous verrez Paramètres de cache hérités sélectionnés.
-
Ajoutez des
x-edgeoptimize-configet desx-edgeoptimize-urlà la liste autorisée En-têtes :- Sélectionnez Inclure les en-têtes suivants dans la liste déroulante.
- Ajoutez des
x-edgeoptimize-configet desx-edgeoptimize-url.
Si vous avez déjà sélectionné Tous dans la liste déroulante En-têtes , ignorez cette étape : tous les en-têtes sont automatiquement transférés vers l’origine.
-
Vérifiez le paramètre Caching d’objets :
- Si la valeur est Personnaliser — il est recommandé de définir Durée de vie minimale sur
0. Cependant, si votre TTL minimale actuelle est déjà très courte, vous n’aurez peut-être pas besoin de la modifier. - Si le paramètre est défini sur Utiliser les en-têtes de cache d’origine — aucune modification n’est nécessaire.
- Si la valeur est Personnaliser — il est recommandé de définir Durée de vie minimale sur
-
Cliquez sur Enregistrer les modifications.
Scénario B : non hérité avec une politique de cache personnalisée
Si votre comportement utilise déjà une politique de cache personnalisée (une politique que vous avez créée, et non une politique gérée par AWS) :
Navigation : Console AWS > CloudFront > Politiques > Cache
-
Cliquez sur votre politique existante.
-
Cliquez sur Modifier.
-
Il est recommandé de définir durée de vie minimale sur
0. Cependant, si votre TTL minimale actuelle est déjà très courte, vous n’aurez peut-être pas besoin de la modifier.
-
Sous Paramètres de clé de cache > En-têtes, ajoutez les
x-edgeoptimize-configet lesx-edgeoptimize-urlà vos inclusions existantes.
-
Cliquez sur Enregistrer les modifications.
Scénario C : non hérité avec une politique de cache gérée (AWS)
Si votre comportement utilise une politique de cache géré par AWS (par exemple, CachingOptimized), vous ne pouvez pas la modifier. Vous devez créer une nouvelle politique de cache personnalisée qui réplique les paramètres de la politique gérée existante et ajoute les en-têtes Edge Optimize par-dessus.
Partie 1 : Notez les paramètres actuels de votre stratégie de cache géré
Navigation : Console AWS > CloudFront > Politiques > Cache
-
Recherchez et cliquez sur la politique de cache géré actuellement associée à votre comportement (par exemple,
CachingOptimized). -
Notez tous les paramètres existants :
- TTL minimale, TTL maximale, TTL par défaut
- En-têtes inclus dans la clé de cache
- Cookies inclus dans la clé de cache
- Chaînes de requête incluses dans la clé de cache
- Support de compression (Gzip, Brotli)
Partie 2 : création d’une politique de cache personnalisée avec les mêmes paramètres + configuration Edge Optimize
Navigation : Console AWS > CloudFront > Politiques > Cache
-
Cliquez sur Créer une stratégie de cache.
-
Nom :
edgeoptimize-cache
-
Reproduire tous les paramètres indiqués dans la partie 1, avec les modifications suivantes :
- Il est recommandé de définir durée de vie minimale sur
0. Cependant, si votre TTL minimale actuelle est déjà très courte, vous n’aurez peut-être pas besoin de la modifier.
- Sous Paramètres de clé de cache > En-têtes, incluez tout ce dont disposait la politique gérée, ainsi que les
x-edgeoptimize-configet lesx-edgeoptimize-urlsupplémentaires.
- Il est recommandé de définir durée de vie minimale sur
-
Cliquez sur Créer.
-
Revenez à votre comportement et associez la nouvelle politique :
Navigation : Console AWS > CloudFront > Distributions > [Votre Distribution] > Comportements
- Modifiez votre comportement.
- Sous Clé de cache et demandes d’origine, sélectionnez Politique de cache.
- Sélectionnez
edgeoptimize-cachedans la liste déroulante. - Cliquez sur Enregistrer les modifications.
Étape 4 : créer la fonction Lambda@Edge (requête et réponse d’origine)
us-east-1 (Virginie du Nord). Ceci est une exigence d’AWS. Même si la fonction est créée dans us-east-1, AWS la reproduit automatiquement vers tous les emplacements de périphérie CloudFront dans le monde entier, afin qu’elle s’exécute à l’emplacement de périphérie le plus proche de la visionneuse. Assurez-vous d’être dans la région us-east-1 de la console AWS avant de continuer.Créez la fonction Lambda
Navigation : Console AWS > Lambda
-
Cliquez sur Créer une fonction.
-
Sélectionnez Auteur à partir de zéro.
-
Configurez les éléments suivants :
- Nom de la fonction :
edgeoptimize-origin - Laissez tous les autres champs avec leurs valeurs par défaut.
- Nom de la fonction :
-
Cliquez sur Créer une fonction.
-
Dans l’éditeur de code, remplacez le code par défaut par le code du fichier origin-request-response.js.
-
Cliquez sur Déployer pour enregistrer le code.
-
Notez le nom du rôle d’exécution affiché sous Configuration > Autorisations (par exemple,
edgeoptimize-origin-role-xxxxx). Vous en aurez besoin dans les étapes suivantes.
Mettre à jour la politique d’approbation du rôle d’exécution
Le rôle créé automatiquement n’approuve que lambda.amazonaws.com. Pour Lambda@Edge, vous devez également ajouter edgelambda.amazonaws.com.
Navigation : Console AWS > IAM > Rôles > [votre rôle de l’étape précédente] > Onglet Relations de confiance
-
Cliquez sur Modifier la politique d’approbation.
-
Remplacez la politique par le contenu de trust-policy.json.
-
Cliquez sur Mettre à jour la politique.
edgelambda.amazonaws.com est obligatoire pour Lambda@Edge. Sans cela, CloudFront ne peut pas appeler votre fonction aux emplacements Edge.Correction de la politique d’autorisation des journaux CloudWatch
Le rôle créé automatiquement est fourni avec une politique AWSLambdaBasicExecutionRole configurée pour Lambda standard, qui a la mauvaise région et le nom de groupe de journaux pour Lambda@Edge. Vous devez le mettre à jour.
Navigation : Console AWS > IAM > Rôles > [votre rôle] > Onglet Autorisations > cliquez sur le nom de la politique jointe (par exemple, AWSLambdaBasicExecutionRole-xxxx)
-
Cliquez sur Modifier.
-
Remplacez la politique par le contenu de cloudwatch-policy.json.
Dans le fichier JSON, remplacez
ACCOUNT_IDpar votre identifiant de compte AWS (situé dans le coin supérieur droit de la console AWS) etFUNCTION_NAMEpar le nom de votre fonction Lambda (par exemple,edgeoptimize-origin). -
Cliquez sur Enregistrer les modifications.
* : Lambda@Edge s’exécute à l’emplacement Edge le plus proche de la visionneuse, de sorte que les journaux sont écrits vers CloudWatch dans la région de l’emplacement Edge (par exemple, ap-south-1, eu-west-1), pas nécessairement us-east-1. Le groupe de journaux utilise un nom comportant un préfixe de région : /aws/lambda/us-east-1.FUNCTION_NAME, où us-east-1 correspond toujours à la région d’origine de la fonction.Publier une version
-
Sur la page de la fonction, cliquez sur Actions (en haut à droite) > Publier la nouvelle version.
-
Ajoutez une description.
-
Cliquez sur Publier.
-
Copiez ou notez le Fonction ARN — vous en avez besoin à l'étape suivante.
Étape 5 : associer les fonctions et la politique de cache au comportement
Navigation : Console AWS > CloudFront > Distributions > [Votre Distribution] > Comportements
-
Modifiez votre comportement.
-
Si vous avez créé une stratégie de cache à l’étape 3 (scénario C), définissez stratégie de cache sur
edgeoptimize-cache.
-
Sous Associations de fonctions, configurez :
- Requête de la visionneuse :
edgeoptimize-routing - Demande d’origine : fonction avec version ARN à l’étape 4 (dans Publication d’une version).
- Réponse d’origine : fonction versionnée ARN à l’étape 4 (dans Publication d’une version).
- Requête de la visionneuse :
-
Cliquez sur Enregistrer les modifications.
Étape 6 : tester la configuration
1. Tester le trafic de robots (doit être optimisé)
Envoyez une requête avec un agent utilisateur de robot agent. Lors de la première requête, Edge Optimize peut renvoyer une réponse proxy (non optimisée) pendant qu’il traite et met en cache la page. Vous pouvez l’identifier par l’en-tête x-edgeoptimize-proxy: 1 dans la réponse.
Simulez une requête de robot d’IA à l’aide d’une chaîne agent-utilisateur :
curl -svo /dev/null https://www.example.com/page.html \
--header "user-agent: chatgpt-user"
Une réponse réussie inclut l’en-tête x-edgeoptimize-request-id, confirmant que la requête a été acheminée via Edge Optimize :
< HTTP/2 200
< x-edgeoptimize-request-id: 50fce12d-0519-4fc6-af78-d928785c1b85
2. Tester le trafic humain (ne devrait PAS être affecté)
Simulez une requête régulière de navigateur humain :
curl -svo /dev/null https://www.example.com/page.html \
--header "user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36"
La réponse ne doit pas contenir l’en-tête x-edgeoptimize-request-id. Le contenu de la page et le temps de réponse doivent rester identiques à avant l’activation de l’option Optimiser dans Edge.
3. Comment différencier les deux scénarios
x-edgeoptimize-request-idx-edgeoptimize-fo1)Le statut du routage du trafic peut également être vérifié dans l’interface utilisateur de LLM Optimizer. Accédez à Configuration du client et sélectionnez l’onglet Configuration du réseau CDN.
4. Vérifiez que les journaux circulent correctement
Après avoir exécuté les requêtes de test ci-dessus, vérifiez que les journaux sont écrits pour les fonctions CloudFront et Lambda@Edge.
Journaux des fonctions CloudFront (edgeoptimize-routing)
Navigation : Console AWS > CloudWatch > Groupes de journaux (dans le us-east-1 ou la région où votre distribution CloudFront est configurée)
-
Recherchez un groupe de journaux nommé
/aws/cloudfront/function/edgeoptimize-routing. -
Ouvrez le dernier flux de journal.
-
Pour les demandes d’agence, vous devriez voir des entrées telles que :
Adding origin group for userAgent: chatgpt-userRouting to Edge Optimize origin for userAgent: chatgpt-user
-
Pour les requêtes non-agences, vous devriez voir :
Routing to Default origin for userAgent: ...
Vous pouvez également vérifier l’onglet Mesures sous Console AWS > CloudFront > Fonctions > edgeoptimizer-routing pour afficher les nombres d’appels et les taux d’erreur.
Journaux Lambda@Edge (edgeoptimize-origin)
us-east-1. Cochez l’option CloudWatch dans la région AWS la plus proche de l’endroit où vous avez exécuté la commande curl.Navigation : Console AWS > CloudWatch > Groupes de journaux (vérifiez que vous vous trouvez dans la bonne région)
-
Recherchez un groupe de journaux nommé
/aws/lambda/us-east-1.edgeoptimize-origin. -
Ouvrez le dernier flux de journal.
-
Pour les demandes d’agence, vous devriez voir des entrées telles que :
Calling Edge Optimize Origin for agentic requests— chemin principalCalling Default Origin in case of failover for agentic requests— chemin de basculementFailover Triggered for agentic requests— détection de basculement origine-réponse
Si le groupe de journaux n’est pas présent, vérifiez que les autorisations IAM ont été correctement mises à jour à l’étape 4. Vérifiez également d’autres régions AWS à proximité : l’emplacement Edge qui a répondu à votre demande peut différer de ce à quoi vous vous attendez.
Résolution des incidents
x-edgeoptimize-request-id en réponse aux demandes de l’agentYOUR_DEFAULT_ORIGIN a été correctement remplacé dans le code de fonction CloudFront (étape 2).x-edgeoptimize-api-key dans les en-têtes personnalisés d’origine Edge Optimize (étape 1).us-east-1.cache-control: no-store0 dans votre stratégie de cache (étape 3). Si votre durée de vie minimale est déjà très courte, cela peut ne pas poser problème.Désactivation et réactivation de l’optimisation dans Edge
La fonction Lambda@Edge (edgeoptimize-origin) est associée aux événements de requête d’origine et de réponse d’origine de votre comportement CloudFront. Comme il s’exécute en ligne sur chaque requête passant par ce comportement (à la fois humaine et agentique), une panne de Lambda@Edge aura un impact sur tout le trafic en direct, et pas seulement sur les requêtes agentiques. Si vous détectez une panne de Lambda@Edge, supprimez immédiatement les associations de fonctions pour restaurer le flux de trafic normal à votre origine par défaut.
Comment détecter une panne de Lambda@Edge
- Tableau de bord d’intégrité du service AWS — Vérifiez le Tableau de bord d’intégrité du service AWS pour tout incident actif affectant Amazon CloudFront ou AWS Lambda. Une panne globale ou régionale signalée ici est le moyen le plus rapide de confirmer le problème du côté de l’infrastructure AWS plutôt que dans votre configuration.
- Lambda@Edge erreurs — Accédez à AWS Console > CloudFront > Surveillance > [Votre distribution]. Ouvrez l’onglet Lambda@Edge errors et recherchez les erreurs d’exécution dans le graphique Erreurs d’exécution. S’ils sont élevés, Lambda@Edge est peut-être en panne.
Désolidarisation de la fonction Lambda@Edge
Navigation : Console AWS > CloudFront > Distributions > [Votre Distribution] > Comportements
-
Cliquez sur Modifier pour connaître votre comportement.
-
Faites défiler l’écran jusqu’à la section Associations de fonctions.
-
Définissez les associations suivantes sur Aucune association :
table 0-row-2 1-row-2 2-row-2 3-row-2 Événement Passer à Requête de la visionneuse Aucune association Demande d’origine Aucune association Réponse d’origine Aucune association
-
Cliquez sur Enregistrer les modifications.
-
Attendez que le déploiement de la distribution CloudFront soit terminé. Le statut passe de Déploiement à la date de dernière modification, généralement en quelques minutes.
Une fois déployé, tous les itinéraires de trafic rejoignent directement votre origine par défaut. Aucune configuration n’est supprimée ; la fonction Lambda et ses associations peuvent être restaurées à tout moment.
Rattachement de la fonction Lambda@Edge
Navigation : Console AWS > CloudFront > Distributions > [Votre Distribution] > Comportements
-
Cliquez sur Modifier pour connaître votre comportement.
-
Faites défiler l’écran jusqu’à la section Associations de fonctions.
-
Restaurez les associations :
table 0-row-2 1-row-2 2-row-2 3-row-2 Événement Définir sur Requête de la visionneuse edgeoptimize-routing(fonction CloudFront)Demande d’origine ARN lambda avec version à partir de l’étape 4 Réponse d’origine ARN lambda avec version à partir de l’étape 4 Utilisez la fonction ARN versionnée, comme indiqué à l’étape 4 (dans Publication d’une version).
-
Cliquez sur Enregistrer les modifications.
-
Attendez que le déploiement de la distribution soit terminé, puis vérifiez que les requêtes agentiques renvoient l’en-tête
x-edgeoptimize-request-idcomme décrit à l’étape 6.
Pour en savoir plus sur l’optimisation sur Edge, y compris sur les opportunités disponibles, les workflows d’optimisation automatique et les questions fréquentes, revenez à la Présentation de l’optimisation sur Edge .