Configuration de Fastly
Les captures d’écran suivantes illustrent la configuration Fastly pour diffuser du contenu. Les paramètres essentiels sont marqués d’un cercle rouge.
Configuration de l’invalidation push pour Fastly
L’invalidation push purge automatiquement le contenu sur le réseau de diffusion de contenu de production du client (par ex. www.yourdomain.com
), chaque fois qu’un auteur publie des modifications de contenu.
Le contenu est purgé par l’URL et par la balise/clé du cache.
L’invalidation push est activée en ajoutant des propriétés spécifiques à la configuration du projet (un classeur Excel nommé .helix/config.xlsx
dans SharePoint ou une feuille Google nommée .helix/config
dans Google Drive).
Propriétés de configuration :
Pour créer un jeton d’API Fastly,
- accéder à Jetons API personnels,
- cliquez sur "Créer un jeton",
- saisissez un nom (par ex.
"Production Site Purge Token"
), - Sélectionnez "Un service spécifique" et votre service de production dans la liste déroulante,
- cochez la case "Purge select content (purge_select) — Purge par URL ou clé de substitution",
- sélectionnez "Ne jamais expirer",
- cliquez sur "Créer un jeton",
- copiez la valeur de jeton générée affichée dans la fenêtre contextuelle.
Vous pouvez valider les informations d’identification avec cette outil.
Création d’un service Fastly
Accédez au Interface utilisateur de gestion rapide et sélectionnez Créer un service:
Ajouter un domaine
Ajoutez votre domaine de production (par ex. www.mydomain.com
) :
Configurer l’origine
Ajoutez votre origine (par ex. main--mysite--hlxsites.hlx.live
) :
Cliquez sur le crayon pour éditer la nouvelle origine :
Faire défiler vers le bas et modifier Habillement to Ashburn Metro (IAD)
(non obligatoire mais recommandé ) et Remplacer l’hôte au nom d’hôte de votre origine (identique à Adresse ci-dessus, par exemple main--mysite--hlxsites.hlx.live
)mandatory ) :
Activer Gzip
Création de fragments de code VCL
Création d’un fragment de code VCL pour le recv
sous-routine avec le code VCL suivant :
if (req.url.path !~ "/media_[0-9a-f]{40,}[/a-zA-Z0-9_-]*\.[0-9a-z]+$"
&& req.url.ext !~ "(?i)^(gif|png|jpe?g|webp)$"
&& req.url.ext != "json"
&& req.url.path != "/.auth") {
// strip query string from request url
set req.url = req.url.path;
}
Créez des fragments de code VCL pour le miss
et pass
sous-routines avec le code VCL suivant :
set bereq.http.X-BYO-CDN-Type = "fastly";
set bereq.http.X-Push-Invalidation = "enabled";
NB : Le X-Push-Invalidation: enabled
l’en-tête de requête active l’invalidation push, y compris . TTL de cache long.
miss
fragment de code :
pass
fragment de code :
Créez enfin un deliver
extrait de code avec le code VCL suivant :
unset resp.http.Age;
if (req.url.path !~ "\.plain\.html$") {
unset resp.http.X-Robots-Tag;
}
Après avoir effectué toutes les étapes et activé la version du service, vous devez tous être défini :
Remarque
Votre configuration rapide ne doit pas utiliser Pare-feu d’applications web de nouvelle génération pour les demandes qui vont à l’encontre de hlx.live ou de toute autre origine Edge Delivery Services. L’activation du WAF avec des Edge Delivery Services peut entraîner la diffusion d’un contenu erroné.
Les Edge Delivery Services n’ont pas besoin de pare-feu d’applications web, car il s’exécute sur une infrastructure renforcée, partagée et ultra-évolutive. Les demandes qu’un WAF intercepterait généralement sont interrompues dans nos CDN.