URL conviviale - Modèle de règle
Auteur : Équipe IIS
Les modèles de règle sont utilisés pour fournir un moyen simple de créer une ou plusieurs règles de réécriture dans un scénario donné. Le module de réécriture d’URL 2 comprend plusieurs modèles de règle pour certains scénarios d’utilisation courants. Par ailleurs, l’interface utilisateur du module de réécriture d’URL fournit un framework permettant de raccorder des modèles de règle personnalisée. Cette procédure pas à pas vous guide tout au long de l’utilisation du modèle de règle « URL conviviale » inclus avec le module de réécriture d’URL.
Prérequis
Cette procédure pas à pas nécessite les prérequis suivants :
- IIS 7.0 ou version ultérieure avec le service de rôle ASP.NET activé ;
- Module de réécriture d’URL 2.0 release installé.
Configuration d’une page Web de test
Nous allons utiliser un test simple asp.net page pour vérifier que les règles créées par le modèle fonctionnent correctement. La page de test lit simplement les variables de serveur Web et génère leurs valeurs dans le navigateur.
Copiez le code ASP.NET suivant et placez-le dans le dossier %SystemDrive%\inetpub\wwwroot\
dans un fichier appelé article.aspx :
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>URL Rewrite Module Test</title>
</head>
<body>
<h1>URL Rewrite Module Test Page</h1>
<table>
<tr>
<th>Server Variable</th>
<th>Value</th>
</tr>
<tr>
<td>Original URL: </td>
<td><%= Request.ServerVariables["HTTP_X_ORIGINAL_URL"] %></td>
</tr>
<tr>
<td>Final URL: </td>
<td><%= Request.ServerVariables["SCRIPT_NAME"] %>?<%= Request.ServerVariables["QUERY_STRING"] %></td>
</tr>
<tr>
<td>Public Link: </td>
<td><a href="<%= Request.ServerVariables["SCRIPT_NAME"] %>?<%= Request.ServerVariables["QUERY_STRING"] %>">Link URL</a></td>
</tr>
</table>
</body>
</html>
Après avoir copié ce fichier, accédez à http://localhost/article.aspx
et vérifiez que la page s’affiche correctement dans un navigateur.
Utilisation du modèle de règle pour générer des règles de réécriture
Le modèle de règle « URL conviviale » peut être utilisé pour générer des règles de réécriture, de redirection et de trafic sortant qui rendent les URL de votre application Web dynamique plus conviviale pour l’utilisateur et le moteur de recherche. En règle générale, les pages Web dynamiques prennent en compte les paramètres de chaîne de requête lors de la génération d’un code HTML de sortie. Les URL avec des chaînes de requête (par exemple http://contoso.com/articles.aspx?year=2008&month=11
) ne sont pas aussi faciles à utiliser et à communiquer en tant qu’URL basées sur une hiérarchie simple (par exemple http://contolso.com/articles/2008/11
). En outre, certains analyseurs du moteur de recherche peuvent ignorer la chaîne de requête lors de l’indexation des pages du site Web. Le modèle de règle vous permet de générer une règle de réécriture qui transforme les URL basées sur la hiérarchie en URL avec des chaînes de requête. Le modèle peut également générer une règle de redirection qui peut être utilisée pour rediriger les URL de formulaire de clients Web à l’aide de chaînes de requête pour nettoyer les URL. Enfin, il est possible de créer une règle de réécriture sortante qui remplace toutes les occurrences d’URL par des chaînes de requête dans la réponse HTML par leurs équivalents d’URL basées sur la hiérarchie.
Pour utiliser le modèle, procédez comme suit :
- Accéder au Gestionnaire des services Internet (IIS)
- Sélectionnez« Site Web par défaut »
- Dans la vue des fonctionnalités, cliquez sur « Réécriture d’URL »
- Dans le volet« Actions » sur le côté droit, cliquez sur « Ajouter des règles... », puis sélectionnez le modèle« URL conviviale » :
- Dans la boîte de dialogue« Ajouter des règles pour activer les URL conviviales », entrez un exemple d’URL avec des paramètres de chaîne de requête :
http://localhost/article.aspx?id=123&title=some-title
puis développez la liste déroulante avec des options suggérées pour transformer cet exemple d’URL en URL sans chaîne de requête.
- Choisissez la deuxième option :
http://localhost/article/123/some-title
. Notez que le modèle d’URL et l’URL de substitution ont été mis à jour en conséquence. Celles-ci seront utilisées dans la règle de réécriture qui sera créée par le modèle de règle. Cochez la case« Créer une règle de redirection correspondante » pour créer une règle de redirection qui sera utilisée lorsque les clients Web utilisaient l’URL interne pour demander une page Web. Ces clients sont redirigés vers une URL publique correspondante.
Vérifiez également« Créer une règle de réécriture sortante correspondante » pour créer une règle de trafic sortant qui remplacera toutes les instances d’URL internes dans le code HTML de réponse par leurs équivalents publics.
- Cliquez sur« OK » pour que les règles de réécriture, de redirection et de trafic sortant soient générées :
Test de la règle
Pour tester les règles générées, ouvrez un navigateur Web et demandez l’URL suivante :
http://localhost/article/234/some-title
Vous devez normalement voir que la règle de réécriture sur votre serveur Web a changé l’URL d’origine en article.aspx et qu’elle a passé« 234 » et« some-title » comme valeurs des paramètres de la chaîne de requête.
Dans l’explorateur Web, déplacez la souris sur le texte« URL du lien » (ou utilisez le menu« Page » ->« Afficher la source... »). Notez que même si l’URL du lien était initialement dans un format qui utilisait des paramètres de chaîne de requête, elle a été remplacée par le module de réécriture d’URL pour utiliser le format d’URL basé sur la hiérarchie.
En outre, si vous demandez http://localhost/article.aspx?id=432&title=some-other-title
vous verrez que le navigateur est redirigé vers http://localhost/article/432/some-other-title
.
Résumé
Dans cette procédure pas à pas, vous avez appris à générer des règles de réécriture à l’aide du modèle de règle« URL conviviale » inclus dans le module de réécriture d’URL. Ce modèle de règle peut être utilisé comme point de départ pour concevoir des règles de réécriture pour activer les URL conviviales et conviviales du moteur de recherche pour vos applications Web existantes.