Loading...

Aide CDN.com.tr

Définir le comportement du cache avec Add Rule

Configurez la clé de cache domaine/chemin, le TTL, les méthodes/statuts, les en-têtes/cookies, l'optimisation et les règles de limitation de débit.

Définir le comportement du cache avec Add Rule

Configurez la clé de cache domaine/chemin, le TTL, les méthodes/statuts, les en-têtes/cookies, l'optimisation et les règles de limitation de débit.

Chemin dans le panneau

  1. Management Panel
  2. CDN Accounts
  3. Advanced Management
  4. Add Rule
  5. Save / Apply Changes

Que résout Add Rule ?

Ces exemples utilisent des scénarios sûrs sur origine WordPress pour les fichiers statiques, les chaînes de requête, les en-têtes/cookies et les chemins de session sensibles.

Cache des ressources statiques

Mettre en cache le CSS/JS de manière agressive

Accélérez les ressources avec GET/HEAD, les réponses 200/301/302/304, et un TTL d'un jour ou plus ; retirez les paramètres de suivi de campagne de la clé de cache.

Pull / Push / Hosting Default, CNAME, ou Full DNS
Session WordPress

Contourner l'admin, la connexion, le panier et la validation de commande

Contournez le cache lorsqu'un cookie de session ou de panier est présent ; les chemins wp-admin et wp-login ne doivent jamais entrer dans le cache partagé.

Plateforme WordPress Custom domain
Hygiène des en-têtes

Nettoyer les en-têtes d'origine et déboguer en toute sécurité

Ignorez Set-Cookie ou Cache-Control pour les décisions de cache, masquez X-Origin-Debug/X-Powered-By aux utilisateurs, et n'activez le débogage en amont que temporairement.

Pull CDN Toutes les méthodes de diffusion
Point de terminaison coûteux

Limiter le débit et n'autoriser que certains paramètres de requête

Pour les chemins de type API, n'incluez dans la clé de cache que les paramètres de requête qui modifient le contenu, et définissez une limite de requêtes.

Origine dynamique Default, CNAME, ou Full DNS

Prerequis

  • Un compte et un nom d'hôte doivent être sélectionnés.
  • Enregistrer une Add Rule peut déclencher un flux de déploiement/application en direct ; vérifiez d'abord le chemin, le domaine et l'ordre des règles.
  • Les captures d'écran utilisent des valeurs telles que `www.example.com` au lieu des domaines réels des clients.
  • Pour les applications basées sur des sessions comme WordPress, écrivez des règles de contournement admin/connexion/panier avant de mettre en cache largement.

Modele de decision

Délimiter d'abord

Restreignez la règle par domaine, protocole et regex de chemin avant de modifier le comportement ; les règles larges du type `/` nécessitent un examen délibéré.

  • Domaine de service : quel nom d'hôte est concerné ?
  • Type : HTTP et/ou HTTP-2 sont-ils nécessaires ?
  • Path Regex : fichier, dossier ou point de terminaison exact ?

Modèle de requête pour la clé de cache

Conservez les paramètres de requête dans la clé de cache uniquement lorsqu'ils modifient le contenu ; les paramètres de suivi sont généralement retirés.

  • Requête complète : chaque paramètre crée un objet de cache distinct.
  • Ignorer tout/liste : regroupe les paramètres de campagne.
  • Autoriser la liste : ne conserve que des paramètres tels que `lang` ou `v`.

Contournement ou TTL ?

Le contenu personnalisé, le panier et l'admin doivent contourner le cache ; le contenu statique et anonyme peut recevoir un TTL.

  • Bypass Cache : chemins de session/admin/panier.
  • Cache Expire Time : contenu statique et anonyme.
  • Response TTL : durées distinctes pour 404/500 et autres statuts.

Comportement des en-têtes et cookies

Ignorer un en-tête d'origine pour les décisions de cache est différent de le masquer au client.

  • Ignore Headers : retire les en-têtes des décisions de cache du CDN.
  • Hide Headers : n'expose pas les en-têtes de réponse au navigateur.
  • Bypass by Cookie : contourne le cache lorsque le cookie est présent.

Guide etape par etape

1

Ouvrir Add Rule depuis Advanced Management

Les préréglages au niveau du compte définissent le comportement général ; Add Rule écrit un comportement précis pour un domaine/chemin.

  • Sélectionner le compte cible dans CDN Accounts.
  • Ouvrir Advanced Management.
  • Cliquer sur Add Rule.

Resultat attendu: La fenêtre de règle s'ouvre et la nouvelle règle est préparée dans le périmètre du compte sélectionné.

cdnctl equivalent
cdnctl accounts list
export ACCOUNT_UUID=<selected_account_uuid>
cdnctl cdn advanced-rules list --account "$ACCOUNT_UUID" --format table
2

Restreindre le domaine, le protocole et le regex de chemin

Ces champs déterminent quelles requêtes la règle cible ; un regex trop large peut modifier tout le site.

  • Choisir le nom d'hôte dans Service Domain Name.
  • Sélectionner HTTP et/ou HTTP-2.
  • Saisir un motif de fichier, dossier ou point de terminaison dans Path Regex.
  • Choisir un préréglage de cache si nécessaire.

Resultat attendu: La règle ne correspond qu'au nom d'hôte et aux chemins ciblés.

cdnctl equivalent
cat > rule-static-assets.json <<EOF
{"server_domain_names":["www.example.com"],"type":["http","http2"],"path_regex":"^/cdn-help/rules/(cache-demo\\.css|query-demo\\.json)$"}
EOF
cdnctl cdn advanced-rules validate --account "$ACCOUNT_UUID" --file rule-static-assets.json
3

Définir la clé de cache, le TTL, les méthodes et les statuts

Pour les fichiers statiques, retirez les paramètres de requête de suivi de la clé de cache et ne gardez que les vraies variantes.

  • Choisir Ignore listed params ou Allow listed params dans Cache Key Query Params.
  • Saisir Cache Expire Time.
  • Limiter Allowed Cache Methods et Allowed Cache Responses.
  • Ajouter des valeurs de TTL par statut si nécessaire.

Resultat attendu: Les objets CSS/JSON anonymes sont mis en cache sans diviser le cache par des paramètres de requête inutiles.

cdnctl equivalent
jq '. + {"cache_query_mode":"ignore_list","cache_query_params":["utm_*","gclid","fbclid","msclkid"],"cache_valid_time":"1 day","allowed_cache_methods":["GET","HEAD"],"allowed_cache_responses":["200","301","302","304"],"response_cache_times":{"200":"1 day","301":"1 week","302":"2 hours","304":"1 day"}}' rule-static-assets.json > rule-static-assets-cache.json
cdnctl cdn advanced-rules validate --account "$ACCOUNT_UUID" --file rule-static-assets-cache.json
4

Garder les chemins de session WordPress hors du cache

Les chemins d'admin, de connexion, de panier et de validation de commande doivent préserver le comportement d'origine plutôt que de renvoyer des résultats de cache.

  • Restreindre Path Regex aux chemins `/wp-admin`, `wp-login.php`, `cart`, ou `checkout`.
  • Activer Bypass Cache.
  • Saisir les cookies de session/panier ligne par ligne dans Bypass by Cookie.
  • Ajouter Request Limit ou des règles anti-hotlink si nécessaire.

Resultat attendu: Les requêtes de session ne renvoient pas de contenu mis en cache partagé à un autre utilisateur.

cdnctl equivalent
cat > rule-wordpress-sensitive.json <<EOF
{"server_domain_names":["www.example.com"],"type":["http","http2"],"path_regex":"^/(wp-admin|wp-login\\.php|cart|checkout)(/.*)?$","bypass":"on","bypass_by_cookie":"wordpress_logged_in\nwoocommerce_cart_hash\nwp_woocommerce_session_","limit":30,"per_time":10}
EOF
cdnctl cdn advanced-rules validate --account "$ACCOUNT_UUID" --file rule-wordpress-sensitive.json
5

Relier en-têtes, cookies, optimisation et débogage

Décidez séparément si les en-têtes d'origine influencent les décisions de cache et s'ils sont exposés aux navigateurs.

  • Utiliser Ignore Headers pour les en-têtes qui ne doivent pas influencer les décisions de cache.
  • Utiliser Hide Headers pour les en-têtes qui ne doivent pas être exposés aux clients.
  • Ajouter des Custom Headers de requête si nécessaire.
  • N'activer Debug upstream headers que pendant des tests temporaires.
  • Tester Image optimization et Google pagespeed uniquement sur des chemins délimités.

Resultat attendu: Les en-têtes d'origine sont contrôlés délibérément et le débogage n'est pas laissé actif en production.

cdnctl equivalent
jq '. + {"ignore_headers":["Cache-Control","Set-Cookie"],"hide_headers":["X-Origin-Debug","X-Powered-By"],"custom_headers":"X-Forwarded-Host: $host\nX-CDN-Rule-Debug: temporary","debug_upstream_headers":true,"image_optimization":"on","white_space":"on"}' rule-static-assets-cache.json > rule-headers-debug.json
cdnctl cdn advanced-rules validate --account "$ACCOUNT_UUID" --file rule-headers-debug.json
6

Enregistrer, surveiller le déploiement et vérifier l'URL publique

Comme Save peut déclencher un flux d'application en direct, la vérification finale se fait par chemin/domaine/TTL/en-tête.

  • Vérifier les champs modifiés et l'ordre des règles avant d'enregistrer.
  • Après Save, surveiller le statut Operations ou Apply Changes.
  • Tester le statut, les en-têtes de cache, les en-têtes masqués et le contournement par cookie sur l'URL publique.

Resultat attendu: Après le succès de l'opération, les requêtes correspondantes affichent le nouveau comportement de cache/en-tête/limitation de débit.

cdnctl equivalent
cdnctl cdn advanced-rules create --account "$ACCOUNT_UUID" --file rule-headers-debug.json
cdnctl operations list --account "$ACCOUNT_UUID"
curl -I "https://www.example.com/cdn-help/rules/cache-demo.css?utm_source=test"
curl -I -H "Cookie: wordpress_logged_in=redacted" "https://www.example.com/wp-admin/"

Verification

  • L'ordre des règles et les champs modifiés sont vérifiés.
  • Les regex larges du type `/` nécessitent une confirmation explicite.
  • Les en-têtes de débogage en amont sont désactivés après les tests.
  • Après application, l'URL publique, le code de statut, le comportement de la requête de clé de cache et le résultat des en-têtes/cookies sont vérifiés avec curl ou les DevTools du navigateur.
  • Si cdnctl 0.1.2 n'expose pas encore de commandes de règles avancées, envoyez la même charge utile via le flux de l'API publique `/api/advanced_managements/{account_uuid}/store`.

Cas d'usage

L'admin/panier WordPress contourne le cache tandis que les ressources statiques et les chemins JSON anonymes sont mis en cache délibérément.

Workflow rapide

  1. Ouvrir Advanced Management.
  2. Délimiter la requête avec Add Rule.
  3. Remplir les champs de cache, d'en-tête/cookie et de sécurité.
  4. Après Save, vérifier les opérations et l'URL publique.

Verifications

  • L'ordre des règles est clair.
  • Le regex de chemin n'est pas plus large que nécessaire.
  • Les en-têtes de débogage sont désactivés après les tests.
  • Les champs modifiés sont visibles avant l'enregistrement.

Pages associees

Lire les journaux WAF

Utilisez les journaux WAF pour expliquer un trafic bloqué ou mis au défi sans exposer les systèmes de journalisation internes.