URL rewriting et nombre de parametres variable!

Discussion dans 'URL Rewriting et .htaccess' créé par achaternet, 11 Février 2003.

  1. achaternet
    achaternet WRInaute discret
    Inscrit:
    11 Février 2003
    Messages:
    222
    J'aime reçus:
    0
    Bonjour,
    Voilà le petit hic que je rencontre:

    Je souhaiterai utiliser la methode de la reecriture de l'url par URL rewriting.

    Pour ce qui concerne un nombre de parametre bien definie, il n'y pas trop de pb.

    Mais qd les parametres sont different et leur nombre aussi, comment puis-je ecrire mon .htaccess du coup?? 8O 8O
    expl:
    rprob.php3?sstheme=accessoire&nom=trucmuch

    dc là: ya sstheme et nom, mais il pourrait y avoir

    rprob.php3?ici=0&sstheme=accessoire&choix_type=cpu&choix_marque=olitec

    Comment faire?? :roll:
     
  2. hetzeld
    hetzeld WRInaute passionné
    Inscrit:
    2 Décembre 2002
    Messages:
    1 586
    J'aime reçus:
    0
    Bonjour et bienvenue sur les Forums de WebRankInfo !
    Je te suggère de lire l'intro réservée aux nouveaux arrivants, tu y trouveras sûrement une mine d'informations utiles.

    Pour revenir à ton problème...
    Lorsqu'on attaque l'URL rewriting, il faut raisonner "à l'envers", c.à.d. en réfléchissant à la manière dont les URL seront présentées au monde extérieur.
    Une fois ce style défini, c'est assez simple d'en extraire les règles de réécritures, même pour des paramètres variables en nombre/nom.

    As-tu déjà défini le look de tes URL, tel que tu voudrais l'afficher?

    Cordialement,

    Dan
     
  3. Kmacleod
    Kmacleod WRInaute passionné
    Inscrit:
    28 Novembre 2002
    Messages:
    2 456
    J'aime reçus:
    0
    Pour ce genre de problème, j'ai fait de la sorte

    Pour
    Code:
    articles.php?pg=site12&doc=item0036
    et aussi

    Code:
    articles.php?pg=site12
    Il y a deux url_rewritting dans le .htaccess
    dans l'ordre ce celui qui a le plus de parametre à celui qui a le moins de paramétres (à parametre identique)

    Pour info après avoir vu ton site, je ne sais pas ce que donnera l'url_werrinting, s'il y a que des paramètres alpha, voire texte.
     
  4. absoluteweb
    absoluteweb WRInaute occasionnel
    Inscrit:
    22 Novembre 2002
    Messages:
    367
    J'aime reçus:
    0
    Avec le composant ISAPI_Rewrite pour Windows (pourtant limité :lol: ) on peut boucler pour gérer un nombre de paramètres variable
    Code:
    RewriteRule /([^/]*)/([^/]*)(.*)page.asp(.+)? $3page.asp(?4$4&:\?)$1=$2 [N,I]
    Le flag N permet de boucler
    Une condition (variable 4) permet de savoir si l'on doit placer un ? (premier paramètre) ou un & (paramètres suivants).

    La règle ci-dessus transforme:
    h**p://www.domaine.com/page.asp?a=A&b=B&c=C
    en
    h**p://www.domaine.com/a/A/b/B/c/C/page.asp

    Sans doute avez-vous la même possibilité sous Apache :wink:
     
  5. achaternet
    achaternet WRInaute discret
    Inscrit:
    11 Février 2003
    Messages:
    222
    J'aime reçus:
    0
    De: hetzeld
    Disons que vu la complexité de mon nombre de parametres, je verai en fct.

    absoluteweb:

    Il me semble que ça serait plus de ce type là de composant rewrite qui me permettrait generer les urls, peut important le nombre de champs.

    Je ne souhaite pas , bien entendu inscrire TOUS les parametres possibles dans mon .htacess :lol:

    Quelqu'un pourrait-il m'expliquer un peu plus en details les conditions du composant ISAPI_Rewrite??

    Thks.
     
  6. absoluteweb
    absoluteweb WRInaute occasionnel
    Inscrit:
    22 Novembre 2002
    Messages:
    367
    J'aime reçus:
    0
    C'est un composant pour IIS pas pour Apache...
    Comme je l'indique, peut être que cette boucle est réalisable sous Apache avec le module de rewriting inclu (me dites pas qu'il y a un truc possible sous IIS et impossible sous Apache :lol: ).
     
  7. achaternet
    achaternet WRInaute discret
    Inscrit:
    11 Février 2003
    Messages:
    222
    J'aime reçus:
    0
    Je n'arrive pas a aboutir a autre chose que err 500 (int. serv error) avec cette expl ci ou
    autre ds mon .htaccess.
    Bon, j'ai testé avec easyphp (en transformant page.asp en page.php)
    et en essayant different url.
    Je ne sais pas ce qui ne va pas et j'avoue ss honte ne pas avoir reussi a executer correctement d'autre expl de ce genre:
    ds .htaccess
    RewriteEngine on
    RewriteCond ...
    RewriteRule ...
    marche poa :? :?
    Pour l'instant, ce que j'arrive a faire et qui fct (inspiré de jounal du net):
    ds .htaccess:
    <FilesMatch "^messages$">
    ForceType application/x-httpd-php
    </FilesMatch>
    et le contenu de messages:

    <?
    $chain="rpro.php?";
    $tab=explode("/",$REQUEST_URI);
    $id=$tab[count($tab)-1];
    $vars=explode("_",$id);
    $nbvars=count($vars);
    for ($i=0;$i<$nbvars;$i++)
    {
    if (strrpos($vars[$i],".html"))
    { $vars[$i]=strtok($vars[$i], ".");}
    if (strrpos($vars[$i],"="))
    {
    eval("$$vars[$i];");
    }
    echo("<br>i: $i $vars[$i]");
    $chain=$chain."$vars[$i]";
    }
    $vars[$nbvars-1]=strtok($vars[$nbvars-1], ".");
    $test=$vars[$nbvars-1];
    include("page1.php");
    ?>
    cela fonctionnne.
    La façon d'ecrire l'url :
    ../rpro.php?toto=modem&tata=carte en
    ../messages/toto=modem_tata=carte.html

    La recup des variables fct zossi vers la page1.php

    2EME VERSION:
    messages:

    <?
    $chain="rpro.php?";
    $tab=explode("/",$REQUEST_URI);
    $id=$tab[count($tab)-1];
    $vars=explode("_",$id);
    $nbvars=count($vars);
    echo("nb param: $nbvars<br>");
    for ($i=0;$i<$nbvars;$i++)
    {
    if (strrpos($vars[$i],".html")) { $vars[$i]=strtok($vars[$i], ".");}
    if (strrpos($vars[$i],"="))
    {
    $vars[$i]=ereg_replace("%20"," ",$vars[$i]);
    echo("<H1><br>$vars[$i]<br></H1>");
    eval("$$vars[$i];");
    }
    echo("<br>i: $i $vars[$i]");
    if ($i<>0) {$chain=$chain."&";}
    $chain=$chain."$vars[$i]";
    }
    $vars[$nbvars-1]=strtok($vars[$nbvars-1], ".");
    $test=$vars[$nbvars-1];
    echo("<H1> ce qui donne: $chain</H1>");
    include("page1.php");
    ?>

    car en fait, ds l'url j'ai des param de la forme rpro.php?toto=le meilleur des robots
    d'ou le %20 pour le eval pour l'affectation des variables!

    Bon voilà, ya pas PLUS SIMPLE ?? :roll:

    thks
     
  8. hetzeld
    hetzeld WRInaute passionné
    Inscrit:
    2 Décembre 2002
    Messages:
    1 586
    J'aime reçus:
    0
    Achaternet,

    J'ai été faire un petit tour sur ton site et pense sincèrement qu'avant d'envisager une quelconque réécriture d'URL, il y aurait une phase de "nettoyage" d'URLs qui devrait être réalisée.

    Un certain nombre de liens ne fonctionnent pas et une redirection sur le site de GrosBill suite au choix d'un article s'est même soldée par une erreur 500 (chez GrosBill) dûe très certainement à une URL "non comprise" :oops:

    Le fait de réécrire des URLs va très certainement rendre cette opération de "re-design" beaucoup plus complexe qu'elle ne l'est déjà et, AMHA, il serait raisonnable de la reporter à plus tard.

    Cordialement,

    Dan
     
  9. achaternet
    achaternet WRInaute discret
    Inscrit:
    11 Février 2003
    Messages:
    222
    J'aime reçus:
    0
    1/ Oui, je sais. En fait il y a un pb sur certains themes du site, je vais m'en occupé aprés..

    2/ Il y a aussi des nettoyages de passage de parametre:
    du genre:
    rpro.php?toto=modem&titi=&tata=pci
    en fait donc ds ce cas, il faudra que je n'affiche pas "titi=" qui ne vaut rien :lol:

    Mon pb reste tj ss solution pour l'instant :(

    AU SECOUR, tant que j'ai pas fait de modif sur mon site a propos des urls, google et les autres ne referenceront que la 1ere page, sniff
     
Chargement...
Similar Threads - rewriting nombre parametres Forum Date
Url rewriting sur url à nombres de mots variables URL Rewriting et .htaccess 8 Septembre 2007
rewriting d'un nombre en chaine de caractère URL Rewriting et .htaccess 16 Juin 2007
rewriting avec des - en nombres URL Rewriting et .htaccess 21 Août 2006
nombreuses questions concernant l'URL Rewriting URL Rewriting et .htaccess 9 Mai 2006
URL rewriting Nombre en Texte URL Rewriting et .htaccess 1 Octobre 2005
Problème: nombre de variables dans l'URL et rewriting URL Rewriting et .htaccess 1 Mars 2005
URL Rewriting, Nombres de pages sur un site "Infini&quo URL Rewriting et .htaccess 22 Avril 2003
Paramètres urls & urlrewriting => alphabétiques ou codés ? Problèmes de référencement spécifiques à vos sites 30 Mars 2022
Problème url rewriting et redirection URL Rewriting et .htaccess 4 Février 2022
URL rewriting d'images URL Rewriting et .htaccess 22 Janvier 2022
petit soucis url rewriting URL Rewriting et .htaccess 17 Janvier 2022
url rewriting ne fonctionne pas chez moi URL Rewriting et .htaccess 4 Août 2021
URL rewriting et REGEX bonnes pratiques Développement d'un site Web ou d'une appli mobile 9 Septembre 2020
supprimer /index.html sans url rewriting, possible ? URL Rewriting et .htaccess 13 Novembre 2019
Je bloque sur le rewriting des URL contenant un ? URL Rewriting et .htaccess 3 Septembre 2019
récupération du get après rewriting URL Rewriting et .htaccess 21 Juin 2019
Ralentissement url rewriting URL Rewriting et .htaccess 1 Mai 2019
URL Rewriting Débuter en référencement 17 Avril 2019
Conflit de redirection 301 et Urlrewriting Netlinking, backlinks, liens et redirections 20 Février 2019
URL REWRITING et redirection 301 URL Rewriting et .htaccess 24 Janvier 2019