Utilisation des règles de page avec la mise en cache

Les règles de page vous permettent d'accomplir diverses actions en fonction de l'URL de la page, notamment la création de réacheminements, l'optimisation du comportement de mise en cache, ou l'activation et la désactivation des services.

Une règle de page s'applique à un motif URL qui correspond au format suivant :

<scheme>://<hostname><:port>/<path>

Par exemple :

https://www.example.com:80/image.png

Les composants scheme et port sont facultatifs. Si le composant scheme est omis, le format accepte les protocoles http:// et https://. Si le composant port n'est pas spécifié, la règle s'applique à tous les ports. Vous pouvez utiliser le caractère de recherche générique * dans votre modèle de règle pour renvoyer une série de modèles similaires.

Remarques sur les règles de page

  • La règle de la page unique s'applique à toute demande.
  • Les règles de mise en page s'appliquent par ordre de priorité, de haut en bas. Lorsqu’un URL correspond à une règle, seule cette règle est appliquée. En d'autres termes, si une règle de page s'est déjà déclenchée lors d'une requête, les règles suivantes qui correspondent également au modèle URL ne s'appliquent pas.
  • En règle générale, classez les règles de la plus spécifique à la moins spécifique.
  • Vous pouvez désactiver les règles de page, auquel cas elles sont sans effet. Toutefois, vous pouvez toujours les voir dans la liste et les éditer. La définition de la bascule de Activé vers Désactivé crée une règle de page désactivée initialement.

Transfert (redirection d'URL)

Redirigez une adresse URL vers une autre à l'aide de la redirection HTTP 301 ou 302. Vous pouvez référencer le contenu d'une section d'adresse URL pour laquelle une correspondance avec le caractère générique est établie en utilisant la syntaxe $X. Le signe X indique l'index d'un Glob dans le modèle, et $1 est remplacé par le premier caractère générique correspondant, $2 par le deuxième, et ainsi de suite.

Par exemple, supposons que vous définissiez la règle suivante, où :

  • URL correspondance = *.example.com/*
  • Activé = Activé
  • Contexte = Transfert d' URL
  • Définir comme = 301 Permanent Redirect to http://example.com/$2/

Une demande envoyée à www.example.com/stuff/things est redirigée vers http://example.com/stuff/things.

Veillez à ne pas créer de redirection pour laquelle le domaine pointe vers lui-même. Ceci peut avoir pour conséquence de générer une erreur de redirection infinie ; les adresses URL ne sont alors pas résolues.

Redirection vers HTTPS

Si vous souhaitez rediriger vos visiteurs vers HTTPS, définissez plutôt le comportement de la règle sur le paramètre Toujours utiliser HTTPS.

Définition de la mise en cache personnalisée

Définissez le comportement de mise en cache pour toute URL correspondant au modèle de règle de page, en utilisant l'un des niveaux de cache standard. Le paramètre Cache Level to Cache Everything met en cache tout le contenu, même s'il ne s'agit pas d'un des types de fichiers statiques par défaut. La configuration du paramètre Niveau de cache sur Ignorer empêche la mise en cache sur cette URL.

Lorsque vous spécifiez un niveau de mise en cache à l'aide de règles de page, vous pouvez définir une durée de vie (TTL) du cache Edge, qui détermine la durée pendant laquell CIS conserve les fichiers dans le cache.

Le TTL du cache du navigateur détermine la durée de validité des ressources mises en cache par les navigateurs clients. Si un navigateur demande à nouveau une ressource et que le TTL n'a pas expiré, le navigateur reçoit une réponse HTTP 304 (Not Modified). Vous pouvez définir des valeurs TTL comprises entre 30 minutes et un an.

Tous les comportements de mise en cache par défaut ne sont pas strictement compatibles RFC. La configuration d'Origin Cache Control via les règles de page utilise un ensemble plus récent de règles de mise en cache qui vise à respecter plus fidèlement les RFC, notamment en matière de revalidation. Par exemple, notre comportement par défaut avec max-age=0 consiste à ne rien mettre en cache, alors que le paramètre Contrôle du cache d'origine va procéder à la mise en cache, mais toujours avec une revalidation.

L'exemple suivant définit une règle de page visant à mettre en cache tous les éléments situés dans le dossier /images. Les ressources mises en cache expirent au bout de 30 minutes dans le navigateur de l'utilisateur, et au bout d'un jour dans les centres de données d' IBM CIS.

  • URL correspondance = *.example.com/images/*
  • Activé = Activé
  • Paramètres de comportement des règles:
Règle de comportement pour tout mettre en cache dans /images
Paramètre Définir comme
Niveau de cache Tout mettre en cache
TTL du cache de navigateur 30 minutes
TTL du cache de périphérie 1 jour

L'option Serve Stale Content sert des pages de notre cache, même lorsque votre serveur tombe en panne. Les visiteurs voient une version limitée de votre site, avec un message indiquant qu'ils sont en mode de navigation hors connexion.

Cette fonctionnalité renvoie le statut HTTP 503. Lorsque les serveurs sont à nouveau en ligne, CIS permet aux visiteurs de naviguer de manière transparente.

Si la page demandée ne se trouve pas dans le cache, le visiteur voit une page d'erreur qui l'informe que la page demandée est hors connexion. Si une règle de page Tout mettre en cache est activée avec des délais d'expiration définis inférieurs à la fréquence de mise en cache, le contenu Serve Stale Content est purgé dans l'intervalle correspondant.