URL rewriting et répertoire virtuel
11 messages • Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- ShePaKoiFer
- Nouveau WRInaute
- Messages: 12
- Inscription: Jeu Oct 16, 2003 23:41
URL rewriting et répertoire virtuel
Salut tout le monde
Voila mon site tourne sous Xoops (un célèbre CMS pour ceux qui connaisse…) bref, j’ai un module (nsections) et j’aimerais le rewriter de façon à avoir le nom des sections dans l’url et sous forme de répertoire virtuel.
A la base le lien est de type :
h**p://www.site.com/modules/nsections/index.php?op=listarticles&secid=3
Ce que je préfèrerais :
h**p://www.site.com/nomdelasection/
Le nomdelasection est transmis par la variable $secname
Le problème c'est que secid indique à la requète quel section afficher, si on le supprime, plus rien indique quelle section afficher. J'ai essayé de combiner les deux secid et secname ce qui donne /3-Guide/ mais j'aimerais me passer du 3 Avez vous une idée à la règle que je doit mettre ?
J'ai déjà du mal à exprimer ce que je cherche (oui l'UR est encore assez flou pour moi) donc si il vous manque des infos, ou autre n'hésitez pas à me les demander
La réponse à ce topic me servira de modèle car je rencontre exactement le même problème pour mon forum.
Merci d'avance
Voila mon site tourne sous Xoops (un célèbre CMS pour ceux qui connaisse…) bref, j’ai un module (nsections) et j’aimerais le rewriter de façon à avoir le nom des sections dans l’url et sous forme de répertoire virtuel.
A la base le lien est de type :
h**p://www.site.com/modules/nsections/index.php?op=listarticles&secid=3
Ce que je préfèrerais :
h**p://www.site.com/nomdelasection/
Le nomdelasection est transmis par la variable $secname
Le problème c'est que secid indique à la requète quel section afficher, si on le supprime, plus rien indique quelle section afficher. J'ai essayé de combiner les deux secid et secname ce qui donne /3-Guide/ mais j'aimerais me passer du 3 Avez vous une idée à la règle que je doit mettre ?
J'ai déjà du mal à exprimer ce que je cherche (oui l'UR est encore assez flou pour moi) donc si il vous manque des infos, ou autre n'hésitez pas à me les demander
La réponse à ce topic me servira de modèle car je rencontre exactement le même problème pour mon forum.
Merci d'avance
-

mahefarivony - WRInaute accro

- Messages: 11405
- Inscription: Lun Oct 14, 2002 10:00
il sort d'ou $secname ??
- ShePaKoiFer
- Nouveau WRInaute
- Messages: 12
- Inscription: Jeu Oct 16, 2003 23:41
mahefarivony > De la requète Mysql il renvoi le nom de la section en toute lettre.
-

mahefarivony - WRInaute accro

- Messages: 11405
- Inscription: Lun Oct 14, 2002 10:00
bon.. peux tu s'il te plait nous mettre l'URL complete de départ (en entier donc) et nous donner la tete que tu aimerais que ca ait a l'arrivée..
- ShePaKoiFer
- Nouveau WRInaute
- Messages: 12
- Inscription: Jeu Oct 16, 2003 23:41
Bah à la base dans le script, la variable $secname n'est pas incluse dans l'URL, c'est moi qui l'utilise pour nomer mon répertoire virtuel.
Et à l'arriver cela doit donner ceci : h**p://www.site.com/nomdelasection/
$secname est le nom de la section.
Désolé si je m'exprime mal :/
Et à l'arriver cela doit donner ceci : h**p://www.site.com/nomdelasection/
$secname est le nom de la section.
Désolé si je m'exprime mal :/
Toujours un peu nébuleux, j'en ai peur. Tu veux, dans tes pages HTML,
- Code: Tout sélectionner
http://www.site.com/nomdelasection/
- Code: Tout sélectionner
http://www.site.com/modules/nsections/index.php?op=listarticles&secid=3
Excellent, on progresse. Donc, quelque chose comme
Si tu préfères en httpd.conf (plus rapide, plus sûr, plus souple mais pas forcément possible)
Là, tu récupères secname dans ton script, tu fais un lookup dans la base pour obtenir le secid et le tour est joué
Si tu ne veux pas modifier les scripts et obtenir directement les secid, il y a les RewriteMap évoqués dans un autre fil http://www.webrankinfo.com/forums/viewtopic_7132.htm
Ca correspond à ce que tu veux ou il manque des bouts?
- Code: Tout sélectionner
RewriteRule ^(.*)/$ modules/nsections/index.php?op=listarticles&secname=$1
Si tu préfères en httpd.conf (plus rapide, plus sûr, plus souple mais pas forcément possible)
- Code: Tout sélectionner
RewriteRule ^/(.*)/$ /modules/nsections/index.php?op=listarticles&secname=$1
Là, tu récupères secname dans ton script, tu fais un lookup dans la base pour obtenir le secid et le tour est joué
Si tu ne veux pas modifier les scripts et obtenir directement les secid, il y a les RewriteMap évoqués dans un autre fil http://www.webrankinfo.com/forums/viewtopic_7132.htm
Ca correspond à ce que tu veux ou il manque des bouts?
- ShePaKoiFer
- Nouveau WRInaute
- Messages: 12
- Inscription: Jeu Oct 16, 2003 23:41
nikoshr a écrit:Là, tu récupères secname dans ton script, tu fais un lookup dans la base pour obtenir le secid et le tour est joué
Qu'appelle tu un Lookup ?
Donc en fait, il faudrait que je modifi ma requete sql pour qu'elle ne s'occupe plus de secid mais de secname ? c'est bien cela ?
Sinon c'est .htaccess :/ hébergeur mutualisé oblige
J'entends par lookup aller chercher le secid dans la base correspondant au secname. Pour être plus clair, en PHP, ca donnerait quelque chose comme
Ou effectivement avoir comme clé d'accès le secname dans les requêtes.
Pour les RewriteMap, c'est juste la déclaration de la directive qui doit se faire dans la conf, le reste peut être utilisé dans les .htaccess. A négocier avec ton hébergeur, éventuellement.
- Code: Tout sélectionner
$query = "SELECT secid FROM la_table WHERE secname='$secname";
$result = mysql_query($query);
$data = mysql_fetch_row($result);
$secid=$data[0];
Ou effectivement avoir comme clé d'accès le secname dans les requêtes.
Pour les RewriteMap, c'est juste la déclaration de la directive qui doit se faire dans la conf, le reste peut être utilisé dans les .htaccess. A négocier avec ton hébergeur, éventuellement.
11 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Tutoriel URL Rewriting
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- l'URL Rewriting expliqué aux débutants
- Optimiser le référencement d'un forum phpBB : réécriture d'URL
- 3ème partie de l'article .htaccess : les réécritures conditionnelles
- Précisez vos recherches sur Google par la profondeur en répertoires
- Où placer son fichier Sitemap ? A la racine ?
- L'URL Rewriting expliqué aux débutants
- Les deux échelles du PageRank
- Les 2 échelles de PageRank : toolbar et DMOZ
Consultez la description détaillée des produits ou services de Google suivants : Google Secure Access
- Analyse des backlinks
Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées. - Recherche de citations d'un site en texte brut
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



le forum