La fonctionnalité de redirection 301/302 prend en charge les codes d'état de réponse 301 et 302 du serveur d'origine et les traite de manière identique. Lorsque cette fonctionnalité est activée, les points de présence (POP) CDNDCDN gèrent directement les réponses 301/302 provenant du serveur d'origine, ce qui réduit les interactions de données et accélère la récupération des ressources pour les utilisateurs.
Prérequis
Votre serveur d'origine utilise des redirections 301/302 pour mettre en œuvre sa logique métier.
Contexte
Les codes 301 et 302 sont des codes d'état HTTP indiquant qu'une ressource a été déplacée et n'est plus accessible à l'emplacement demandé. Pour gérer cette situation, un serveur inclut généralement un en-tête Location dans sa réponse. Lorsqu'un client reçoit une réponse 301/302 accompagnée d'un en-tête Location, il envoie une nouvelle requête à l'adresse spécifiée dans cet en-tête afin de récupérer la ressource.
Fonctionnement
La redirection 301/302 signifie que lorsqu'un point de présence (POP) CDNDCDN reçoit un code d'état 301/302 du serveur d'origine en réponse à une requête de retour vers l'origine, le POP CDNDCDN suit directement l'adresse indiquée dans l'en-tête Location pour récupérer la ressource, au lieu de renvoyer le code d'état 301/302 à l'utilisateur.
Un client demande le fichier
http://example.com/examplefile.txt.Le fichier n'est pas mis en cache sur le point de présence (POP) CDNDCDN et une requête de retour vers l'origine est envoyée.
Le serveur d'origine renvoie un code d'état 301/302, avec un en-tête Location pointant vers
http://www.example.org/examplefile.txt.Après avoir reçu la réponse du serveur d'origine, le POP CDNDCDN envoie une requête à l'adresse Location
http://www.example.org/examplefile.txtpour récupérer la ressource.Une fois que le point de présence (POP) CDNDCDN a obtenu la ressource requise, celle-ci est mise en cache sur le POP CDNDCDN.
Le POP CDNDCDN renvoie les ressources récupérées à l'utilisateur.
À ce stade, si un autre utilisateur demande le fichier http://example.com/examplefile.txt, la requête atteint directement le cache du point de présence (POP) CDN DCDN et le fichier est renvoyé à l'utilisateur.
Notes d'utilisation
Avant de configurer la redirection 301/302, assurez-vous que CDNDCDN est configuré avec un hôte d'origine par défaut ou un hôte d'origine spécifique :
Si aucun hôte d'origine par défaut ou spécifique n'est configuré : lorsque le serveur d'origine répond à un POP CDNDCDN avec un code d'état 301/302 et une URL Location, l'en-tête Host de la requête de retour vers l'origine utilisera le nom de domaine issu de l'URL Location.
Si un hôte d'origine par défaut est configuré : lorsque le serveur d'origine répond à un point de présence (POP) CDNDCDN avec un code d'état 301/302 et une URL Location, la requête de retour vers l'origine utilise l'en-tête Host configuré dans CDNDCDN. Si votre serveur d'origine exige que le nom de domaine figurant dans l'URL Location soit utilisé comme Host de retour vers l'origine, utilisez la fonctionnalité hôte d'origine spécifique.
L'en-tête Location dans la réponse du serveur d'origine à un point de présence (POP) CDNDCDN prend en charge les trois formats suivants :
Location: http://www.example.net/index.html: le point de présence (POP) CDNDCDN utilisera l'URL complète issue de l'en-tête Location.Location: //www.example.net/index.htmL: le POP CDNDCDN combinera le protocole de la requête de retour vers l'origine avec les informations contenues dans l'en-têteLocationpour former une URL.Location: /index.html: le POP CDNDCDN forme une URL en concaténant le protocole et le nom de domaine de la requête de retour vers l'origine initiale avec la valeur contenue dans l'en-tête Location.
Procédure
Connectez-vous à la console CDN.
Dans le volet de navigation de gauche, cliquez sur Domain Names.
Sur la page Domain Names, localisez le nom de domaine que vous souhaitez gérer et cliquez sur Manage dans la colonne Actions.
Cliquez sur Origin Fetch. Dans l'onglet Configurations, localisez la section 301/302 Redirection et activez l'interrupteur.
-
Dans la boîte de dialogue qui s'affiche, configurez les paramètres et cliquez sur OK.
Paramètre
Description
Maximum 301/302 Redirects
Il s'agit du nombre maximal de fois qu'un point de présence (POP) CDN peut suivre une redirection lors d'une seule requête utilisateur. Si cette limite est dépassée, le POP renvoie directement un code d'état 301 ou 302 à l'utilisateur. La valeur par défaut est 2 et la plage valide est de 1 à 5.
RemarqueLa configuration de Maximum 301/302 Redirects affecte le nombre maximal de requêtes de retour vers l'origine. Le nombre maximal de requêtes de retour vers l'origine correspond au nombre maximal de fois qu'un nœud CDN peut accéder au serveur d'origine lors d'une seule requête utilisateur.
La formule est la suivante : Nombre maximal de requêtes de retour vers l'origine = Maximum 301/302 Redirects + 1. Le maximum par défaut est 3 et la plage valide est de 2 à 6.
Retain Parameters in 301/302 Redirects
-
Yes : les paramètres de la requête d'origine sont conservés dans la requête de retour vers l'origine vers le nouvel emplacement.
-
No : les paramètres de la requête d'origine ne sont pas conservés dans la requête de retour vers l'origine vers le nouvel emplacement.
Retain Request Headers in 301/302 Redirects
-
Yes : les en-têtes de la requête d'origine sont conservés dans la requête de retour vers l'origine vers le nouvel emplacement.
-
No : les en-têtes de la requête d'origine ne sont pas conservés dans la requête de retour vers l'origine vers le nouvel emplacement.
-
Exemple de configuration
Cas d'utilisation : les ressources de votre serveur d'origine ont été déplacées vers un nouvel emplacement, mais vous souhaitez que les clients y accèdent de manière transparente via le nom de domaine d'origine.
Configuration : activez la redirection 301/302 pour le nom de domaine example.com. Dans la boîte de dialogue 301/302 Redirection, définissez Maximum 301/302 Redirects sur 2. Le nombre maximal de requêtes de retour vers l'origine est de 3. La plage valide pour les redirections est de 1 à 5 et la plage valide pour les requêtes de retour vers l'origine est de 2 à 6. Sélectionnez No pour Retain Parameters in 301/302 Redirects, sélectionnez No pour Retain Request Headers in 301/302 Redirects, puis cliquez sur OK.
Explication des résultats : un utilisateur demande le fichier http://example.com/examplefile.txt. Si le fichier n'est pas mis en cache sur le nœud CDNDCDN, le nœud demande la ressource au serveur d'origine. Le serveur d'origine renvoie un code d'état 301/302 et l'URL de redirection http://www.example.org/examplefile.txt.
Lorsqu'un point de présence (POP) CDN DCDN reçoit un code d'état 301 ou 302, il envoie une requête à l'adresse de redirection. Le POP tente de suivre la redirection jusqu'à deux fois. Si les tentatives échouent, le POP renvoie le code d'état 301 ou 302 à l'utilisateur.
Le POP CDNDCDN récupère la ressource, la renvoie à l'utilisateur et la met en cache sur le POP CDNDCDN.
Lorsque d'autres utilisateurs demandent à nouveau le fichier, CDNDCDN renvoie directement la ressource mise en cache.