Réécriture d' URL: monsite.com/flux.php?id=1&titre=test

Discussion dans 'URL Rewriting et .htaccess' créé par bef1rst, 16 Avril 2005.

  1. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    Bonjour,

    je veux réécrire mes urls sous cette forme : -www.monsite.com/test.html.

    Pour le moment, mes url sont de la forme : -www.monsite.com/flux.php?id=1&titre=test

    Je pensais utiliser cette synthaxe dans mon fichier .htaccess mais je n'obtient aucun changement :

    # -FrontPage-

    IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

    <Limit GET POST>
    order deny,allow
    deny from all
    allow from all
    </Limit>
    <Limit PUT DELETE>
    order deny,allow
    deny from all
    </Limit>
    AuthName -www.bef1rst.com
    AuthUserFile /home/bef1rst/public_html/_vti_pvt/service.pwd
    AuthGroupFile /home/bef1rst/public_html/_vti_pvt/service.grp

    RewriteEngine on
    RewriteRule ^([0-9]+)-([0-9]+)\.html$ flux.php?id=$1&titre=$2 [L]

    Pouvez vous m'aider ?

    Une autre petite question, j'ai un blog sur mon site et il a son propre fichier htaccess. Est ce génant ? Dois je regrouper tous ces fichiers en 1 ?

    Merci
     
  2. Anonymous
    Anonymous Guest
    ^([0-9]+)-([0-9]+)\.html$ veut dire que tu attends des url avec du numerique de la forme 12345-6789.html

    Pour obtenir des url rewritées de la form flux.php?id=$1&titre=$2
    - dans le htaccess ^([0-9]+)-([a-zA-Z]+)\.html$
    - et des pages 1234-test.html

    Parce que dans le cas exposé je ne vois pas de numérique dans la page appelée.
     
  3. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    merci pour ta reponse, je vais tester cela rapidement. Mais tu peux me dire si le fait de placer le fichier .htaccess dans un repertoire permet d'appliquer les regles uniquement pour les pages contenues dans ce repertoire.

    A+
     
  4. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    marche pas...

    J'ai pour tout mis :

    RewriteEngine on
    RewriteRule ^([0-9]+)-([a-zA-Z]+)\.html$ flux.php?id=$1&titre=$2 [L]

    dans le fichier .htaccess a la racine de mon site...

    Une idée ?
     
  5. Anonymous
    Anonymous Guest
    Oui c'est exactement ce qu'il faut faire. le htaccess placé dans un sous-directory sera utilisé par le serveur HTTP en lieu et place de celui du directory parent sauf si l'option inherit est utilsé dans le paramètre "RewriteOptions" (cf. aide mod_rewrite) auquel cas le htaccess parent est aussi utilisé.

    Les règles positionnés sur ce directory seront aussi valables pour les sous-directory de celui-ci.
     
  6. Anonymous
    Anonymous Guest
    Quels est le nom de ta page?
     
  7. Anonymous
    Anonymous Guest
    Sinon pour obtenir
    w-w.monsite.com/flux.php?id=1&titre=test
    à partir de
    w-w.monsite.com/test.html

    du doit écrire
    ^([a-zA-Z]+)\.html /flux.php?id=1&titre=$2

    mais ta valeur id est fixe car dans l'url de base je ne vois pas ou tu peux la récupérer....
     
  8. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    je te donne l'adresse de la page :

    http://www.bef1rst.com/dev/index.php .

    Le premier lien pointe vers :
    http://www.bef1rst.com/dev/flux.php?id= ... oic-lemeur

    et je veux obtenir :
    http://www.bef1rst.com/dev/1-loic-lemeur.html

    Le fichier .htaccess a été placé à cette adresse :
    http://www.bef1rst.com/dev/.htaccess

    avec cette synthaxe :

    # -FrontPage-

    IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

    <Limit GET POST>
    order deny,allow
    deny from all
    allow from all
    </Limit>
    <Limit PUT DELETE>
    order deny,allow
    deny from all
    </Limit>
    AuthName www.bef1rst.com
    AuthUserFile /home/bef1rst/public_html/_vti_pvt/service.pwd
    AuthGroupFile /home/bef1rst/public_html/_vti_pvt/service.grp

    RewriteEngine on
    RewriteRule ^([0-9]+)-([a-zA-Z]+)\.html$ flux.php?id=$1&titre=$2 [L]

    Une idée de l'erreur ? Merci encore pour votre aide
     
  9. Anonymous
    Anonymous Guest
    Tu veux faire l'inverse de ce que tu demandais et de plus tu n'es pas sur la racine de ton site comme tu l'avais dis

    dans ta page les liens doivent être fait comme suit
    Code:
    <a href="http://www.bef1rst.com/dev/1-loic-lemeur.html">...</a>
    dans ton htaccess
    Code:
      RewriteBase /dev
      RewriteRule ^([^-]+)-(.+)\.html$ /dev/flux.php?id=$1&titre=$2 [L]
     
  10. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    1/ Je récapituel pour être sur que l'on parle bien de la même chose :

    - dans mon fichier index.php, les liens doivet être de la forme <a href="http://www.bef1rst.com/dev/1-loic-lemeur.html">...</a> . De ce coté la, je pense aue c'est ok. J'ai recomposé mes url dynamiquement en respectant cette structure. (http://www.bef1rst.com/dev/) avec ce code :

    echo '<a href="' .$row[id]. '-'.$row[titre].'.html">' .$row[nom]. '</a><br>' ;

    - mais pour le fichier actuel flux.php, je ne peux plus récupérer l'id dans l'URL avec cette syntaxe... C'est ce que je ne comprends pas.

    $idurl = $_GET['id'];
    $result = mysql_query("SELECT id,nom,adresse from dev where id=$idurl");

    2/ Je cherche bien a obtenir des rul du type http://www.bef1rst.com/dev/1-loic-lemeur.html avec le fichier flux.php.

    3/ J'ai modifié le code du .htaccess avec ta proposition:

    RewriteBase /dev
    RewriteRule ^([^-]+)-(.+)\.html$ /dev/flux.php?id=$1&titre=$2 [L]

    mais nous sommes bien d'accord que c'est le fichier htaccess à la racine du site qui doit être modifié ?

    Merci pour ta persévérance Darfire, et bravo pour le design de ton site qui est très sympa!
     
  11. Anonymous
    Anonymous Guest
    Non c'est celui du directory /dev

    - pour un htaccess dans le directory /dev
    Code:
    RewriteBase /dev 
    RewriteRule ^([^-]+)-(.+)\.html$ /dev/flux.php?id=$1&titre=$2 [L]
    - pour un htaccess à la racine de ton site
    Code:
    RewriteRule ^dev/([^-]+)-(.+)\.html$ /dev/flux.php?id=$1&titre=$2 [L]
    Dans ce 2ème cas ne met pas de htaccess dans ton directory /dev sauf si tu lui insères l'option "RewriteOptions" à "inherit" (voir mon post + haut)
     
  12. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    OK c'est parfait. L'url rewritting fonctionne a merveille car quand je clic sur le lien "h**p://www.bef1rst.com/dev/1-loic-lemeur.html" dans la page index de mon test "h**p://www.bef1rst.com/dev/", j'arrive bien sur la page flux.php MAIS a ce moment la, je ne sais pas comment récupérer mon paramétre "id" pour composer ma requète..... ?

    Avant l'url rewritting, je procédais de la sorte :

    $idurl = $_GET['id'];
    $result = mysql_query("SELECT id,nom,adresse from dev where id=$idurl");

    while ( $row = mysql_fetch_array($result))
    {
    echo '<b>Nom du site: ' .$row[nom]. '</b><br>Adresse du flux: ' .$row[adresse]. '<br>ID: ' .$row[id].'<br><br>';

    ...
    L'erreur que l'on peut voir correspond a la ligne :
    while ( $row = mysql_fetch_array($result))
     
  13. bef1rst
    bef1rst WRInaute discret
    Inscrit:
    14 Avril 2005
    Messages:
    110
    J'aime reçus:
    0
    Oups, désolé je m'etais trompé, tout fonctionne parfaitement désormais !!! Merci beaucoup pour ta persévérance et la qualité de tes explications. Tu as été d'une grande aide pour mettre en place ce p*#[_( d'url rewritting....
     
Chargement...
Similar Threads - Réécriture monsite flux Forum Date
Réecriture d'URL et redirection pages AMP URL Rewriting et .htaccess 29 Mai 2021
WordPress réécriture d'URL domaine.TLD/COUNTRYCODE/ vers domaine.ccTLD URL Rewriting et .htaccess 9 Mai 2021
Comment faire une redirection des URL en + de la réécriture d'URL ? URL Rewriting et .htaccess 13 Septembre 2020
Réécriture d'articles, est-ce une bonne idée de couper ses articles? Rédaction web et référencement 25 Mai 2020
Réécriture et robots.txt Débuter en référencement 10 Octobre 2019
Réécriture HTTPS / WWW / redirect, etc ... URL Rewriting et .htaccess 10 Juin 2019
Réecriture simple qui ne fonctionne pas URL Rewriting et .htaccess 20 Février 2019
Faire une redirection 301 et une réécriture en même temps (.htaccess) URL Rewriting et .htaccess 16 Décembre 2018
Réécriture url et htaccess URL Rewriting et .htaccess 3 Octobre 2018
Réecriture url sur Shopify e-commerce 15 Juin 2017
Réécriture URL supprimer home/annugrbz/public_html URL Rewriting et .htaccess 24 Novembre 2016
Apache => Ngnix - Réécriture RewriteCond URL Rewriting et .htaccess 1 Février 2016
Réécriture d'url directory URL Rewriting et .htaccess 29 Janvier 2016
Réécriture lien URL Rewriting et .htaccess 24 Septembre 2015
Réécriture dynamique URL Rewriting et .htaccess 15 Septembre 2015
réécriture avec query string URL Rewriting et .htaccess 22 Août 2015
Modification d'une régle de réécriture avec redirection URL Rewriting et .htaccess 2 Juin 2015
Réécriture d'URL et référencement naturel Rédaction web et référencement 10 Avril 2015
Erreur 500 après réecriture URL URL Rewriting et .htaccess 30 Décembre 2014
Réécriture d'urls et fichiers .pdf URL Rewriting et .htaccess 17 Décembre 2014