PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • URL Rewriting : Comment le faire ?
  • Mise en place de l'URL Rewriting sur un site AWP
  • Paramétrage des règles de réécriture d'une page
  • Remarques sur les règles de réécriture
  • Conseils en cas d'erreur HTTP 404 (fichier non trouvé) lors de l'utilisation de l'URL Rewriting
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Présentation
L'URL Rewriting (ou réécriture d'URL) est une technique permettant d'améliorer le référencement d'un site Web.
Elle consiste à définir l'adresse des pages Web en fonction de leur nom et de leurs paramètres de façon à les rendre plus simples à traiter par les moteurs de recherche et plus pertinentes.
Par exemple, une page d'affichage d'une liste de produits dont l'URL serait :
http://www.monsite.com/PAGE_FicheProduit.awp?Categorie=Voitures&Marque=Ferrari&Millesime=2008
peut être présentée aux internautes et aux moteurs de recherche sous l'URL :
http://www.monsite.com/voiture-ferrari-2008.awp
ou bien :
http://www.monsite.com/ferrari/2008/voitures.awp
Limitations et remarques :
  • L'URL Rewriting s'applique uniquement aux pages AWP.
  • L'URL Rewriting fonctionne uniquement avec les serveurs Web suivants : Apache 1.3, 2.2, IIS 5, IIS 6, IIS 7 et supérieur.
  • Pour les sites dynamiques classiques (avec contexte), les adresses sont simplifiées grâce au mécanisme d'URL courtes.
URL Rewriting : Comment le faire ?

Mise en place de l'URL Rewriting sur un site AWP

L'URL Rewriting d'un site peut être configuré grâce à l'option "Projet .. Référencement .. Paramétrer l'URL Rewriting".Pour configurer l'URL Rewriting d'un site, sous le volet "Page", dans le groupe "Référencement", cliquez sur "URL Rewriting".
Une fenêtre de configuration offre une vue globale de toutes les règles de rewriting du projet.
Configuration de l'URL Rewriting d'un projet WEBDEV.
Les caractéristiques de cette fenêtre sont les suivantes :
  • La table (1) affiche toutes les pages du projet et permet de choisir les pages qui seront concernées par le mécanisme d'URL Rewriting.
    Pour activer l'URL Rewriting sur une page du site, cochez la case correspondante dans la première colonne de la table.
  • WEBDEV génère une URL de rewriting par défaut. Pour paramétrer les règles d'une page en particulier, cliquez sur le bouton (...) (2) à droite de la table.
  • Le caractère utilisé pour séparer les paramètres lors de la réécriture peut également être choisi (3).
  • Le cadre en bas de la fenêtre (4) permet d'affiner les règles en testant directement le moteur de réécriture d'URL. Il suffit de saisir une adresse et le moteur indique immédiatement si elle correspond à une page et comment seront extraits les paramètres.

Paramétrage des règles de réécriture d'une page

Pour chaque page dont l'URL doit être réécrite, la fenêtre d'options propose les informations suivantes :
Règles d'URL Rewriting d'une page
La table présente les différentes composantes de l'URL telle qu'elle sera reçue par le serveur d'application WEBDEV. Cette table détaille également la façon de réécrire les différentes composantes de l'URL pour les faire correspondre à une page du projet et aux paramètres de cette page.
Les différentes colonnes de la table sont les suivantes :
  • La colonne "Type" (1) permet de choisir si l'élément de l'URL est une composante fixe ou un paramètre :
    • Une composante fixe est une portion invariable de l'URL. Les composantes fixes peuvent être multilingues (il suffit de cliquer dans la colonne Multilingue pour saisir les valeurs dans les autres langues du projet).
    • Un paramètre est une portion de l'URL correspondant à un paramètre de la page. Ce paramètre peut être déclaré explicitement dans le traitement "Déclarations globales" de la page (pour plus de détails, consultez Traitements associés aux pages) ou récupéré grâce à la fonction PageParamètre.
  • La colonne "Composante" (2) indique la valeur de la composante d'URL dans le cas d'une composante fixe ou le nom du paramètre.
  • La colonne "Format" (3) permet de choisir si un paramètre devra être numérique, alphabétique, alphanumérique ou quelconque.
Les boutons situés à droite de la table (4) permettent de déplacer les différentes composantes de l'URL.
Si la page AWP contient une déclaration de procédure dans le traitement "Déclaration des globales" avec des paramètres déclarés, il est possible de faire générer automatiquement des règles de réécriture avec le bouton "Générer automatiquement" (5).
Par exemple, une page déclarée de la façon suivante :
PROCEDURE PAGE_NomDeLaPage(Param1 est une chaîne, Param2 est un entier)
sera automatiquement réécrite avec trois composantes :
  • Une composante fixe : "NomDeLaPage" (le préfixe "PAGE_" de la charte de programmation est automatiquement retiré).
  • Un premier paramètre correspondant à Param1.
  • Un second paramètre correspondant à Param2.
Au fur et à mesure de la construction des règles de réécriture, un exemple s'affiche en bas de la fenêtre (6).
Remarque : Param1 et Param2 peuvent être utilisés directement dans le code : l'appel à la fonction PageParamètre est alors inutile.
Remarque : Il est possible de demander à éditer manuellement l'expression régulière correspondant aux règles de réécriture de la page (7). Dans ce cas, l'expression régulière est utilisée pour la validation de l'URL reçue et chaque portion mémorisée (grâce aux parenthèses dans l'expression régulière) est affecté à un élément de la table. Pour plus d'informations sur les expressions régulières, consultez la fonction VérifieExpressionRégulière.
Attention : L'édition manuelle de l'expression régulière est réservée au traitement de cas particuliers de réécriture. Elle ne devrait pas être employée dans la plupart des cas.

Remarques sur les règles de réécriture

  • WEBDEV contrôle automatiquement si les différentes règles de réécriture définies dans un projet ne provoquent pas de conflits.
  • Les règles de réécriture sont définies séparément pour chaque site. Si plusieurs sites sont déployés sur le même serveur, les règles de réécriture ne provoqueront pas de conflits entre les sites.

Conseils en cas d'erreur HTTP 404 (fichier non trouvé) lors de l'utilisation de l'URL Rewriting

Après configuration de l'URL rewriting, le serveur Web peut retourner des erreurs HTTP 404. Cette erreur indique qu'il n'a pas trouvé le fichier correspondant à l'URL demandée. Voici les étapes à suivre pour diagnostiquer et corriger le problème :
  1. Vérifier les paramètres d'URL rewriting dans WEBDEV. Ces vérifications sont les suivantes :
    • L'URL utilisée doit correspondre à une des expressions régulières d'URL rewriting du site. Pour vérifier que l'URL utilisée correspond bien à une règle de ré-écriture du site :
      • affichez la fenêtre de paramétrage de l'URL rewriting du projet ("Projet .. Référencement .. Paramétrer l'URL Rewriting").affichez la fenêtre de paramétrage de l'URL rewriting du projet : sous le volet "Page", dans le groupe "Référencement", cliquez sur "URL Rewriting".
      • tapez le nom de la page ré-écrite dans le champ de saisie "Adresse à tester : http://monsite/".
      Si l'URL indiquée est correcte, l'URL réelle de la page est affichée dessous sinon un message indique qu'aucune page ne correspond à l'URL indiquée.
      Par exemple : pagerewriting-p1-p2-p3.awp. => pagerewriting(p1=p1,p2=p2) ou => Aucune page du site ne correspond à cette URL.
      Si cela ne correspond pas, il faut vérifier l'option "Mise en forme avancée" dans le détail de la mise en forme de l'URL rewriting de la page. Cette option doit généralement être en mode "Automatique" et non "Personnalisé" (le cas "Personnalisé" est réservé à un usage très avancé).
    • Pour que l'URL rewriting fonctionne, les pages AWP ne doivent pas être autonomes. En effet, les règles de ré-écriture se trouvent dans la bibliothèque du site (dans la WDL). Ces règles ne peuvent pas être dans la page awp car le but est justement de retrouver la page awp.
    • Les informations de rewriting ne sont peut être pas à jour dans le projet. Dans ce cas, il est conseillé :
      • de faire une réparation du projet en développement (option "Projet .. Autres actions .. Réparer le projet"),de faire une réparation du projet en développement : sous le volet "Projet", dans le groupe "Projet", déroulez "Recompiler et synchroniser" et sélectionnez "Réparer le projet",
      • pour le déploiement, de régénérer la bibliothèque et de la redéployer.
    • Le site doit avoir été déployé au moins une fois par une installation (média physique ou par FTP) de façon à avoir configuré le Serveur d'Application WEBDEV.
    • Dans le répertoire correspondant au chemin de l'URL ré-écrite, un fichier ".WDConfig.awp" doit être présent. Ce fichier contient une information sur le nom du site. Cette information est du type : SITED * <NomDuSite>.
  2. Vérifier le paramétrage du serveur Web utilisé. L'URL rewriting ne fonctionnera que si serveur Web appelle correctement le Serveur d'Application WEBDEV.
    Note : Ces points sont vérifiés par le diagnostic du serveur d'application WEBDEV en mettant le bon nom de serveur virtuel dans le champ de saisie "Nom/IP" à côté du bouton "Diagnostic" de l'onglet "Avancé".
    Les informations à vérifier sont les suivantes :
    • ".awp" doit être associé au moteur WEBDEV 24 dans le site virtuel.
    • Dans la configuration du serveur Web, vérifiez que pour les extensions AWP, l'option "vérifier l'existence du fichier" n'est PAS cochée.
      • Avec IIS 6 (2003 Server) : Dans la fenêtre "Propriétés" du site Web, onglet "Répertoire de base", bouton "Configuration", vérifiez pour la ligne avec .awp que l'option "Vérifier l'existence du fichier" n'est pas cochée.
      • Avec IIS 7 (7/Vista) : Sur le site Web, sélectionnez "Mappage de gestionnaire", onglet "Répertoire de base", bouton "Configuration", puis sélectionnez la ligne avec ".awp". Dans "Restrictions des demandes", onglet "Mappage", vérifiez que rien n'est coché.
    • L'URL rewriting du Serveur d'Application WEBDEV fonctionne avec Apache 1.3, 2.2, IIS 5, IIS 6, IIS 7 et supérieur. Il ne fonctionne pas avec Apache 2.0.
    • Si l'URL contient certains caractères (comme "+") certains serveurs Web peuvent considérer qu'il s'agit d'un double échappement. Ils provoquent alors une erreur HTTP 404 (ou HTTP 404.11). Dans ce cas, il faut configurer le serveur Web pour autoriser le double échappement.
      Par exemple, avec IIS 7 (7/Vista) : Sur le site Web, sélectionnez "Filtrage des demandes", puis cliquez sur le lien à droite "Modifier les paramètres de fonction..." et cochez la case "Autoriser le double-échappement".
Version minimum requise
  • Version 15
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire