IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Apache lit la première règle et ignore les suivantes


Sujet :

Apache

  1. #1
    Membre habitué Avatar de raffa
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 194
    Points : 159
    Points
    159
    Par défaut Apache lit la première règle et ignore les suivantes
    Bonjour,
    voici mes règles, c'est simple, y'en a que 2 pour l'instant car je procède à des tests:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine On
    RewriteRule ^([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=mod_photo&desc=$1&id=$2 [L]
    RewriteRule ^([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=act&do=deldevis&nom=$1&id=$2 [L]
    La première est bien interprétée et m'affiche dans l'url le titre de la photo et son id et si je clique sur le lien il m'affiche bien la page pour modifier la description de la photo, mais la seconde il n'y fait même pas attention et interprète la seconde comme si c'était la première règle et m'affiche la page pour modifier la photo alors que c'est un lien de suppression d'un devis.
    Quelqu'un voit l'erreur ?

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Les motifs sont strictement identiques donc comment voulez-vous qu'Apache distingue vos deux cas ?

  3. #3
    Membre habitué Avatar de raffa
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 194
    Points : 159
    Points
    159
    Par défaut
    Citation Envoyé par julp Voir le message
    Les motifs sont strictement identiques donc comment voulez-vous qu'Apache distingue vos deux cas ?
    Merci pour la réponse, je me doutais que c'était un truc comme ça mais j'ai changé le motif, j'ai a peu près tout essayé et toujours pareille.

    Voici la nouvelle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine On
    RewriteRule ^([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=mod_photo&desc=$1&id=$2 [L]
    RewriteRule ^devis-([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=act&do=deldevis&nom=$1&id=$2 [L]
    et ça ne change rien, il me fait comme si c'était la première.

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    C'est toujours le même problème la première est trop générale, elle prendrait systématiquement le dessus. Il faudrait les inverser éventuellement (leur ordre ayant une importance) ou bien redéfinir la première.

    (des exemples d'URL à réécrire pourrait aider)

  5. #5
    Membre habitué Avatar de raffa
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 194
    Points : 159
    Points
    159
    Par défaut
    Voici pour la première règle qui marche et qui sert a modifier la description d'une photo:

    le code source:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="'.geturl($donnees['com_img']).'-'.intval($donnees['id_img']).'.html">
    et l'url
    http://www.domaine.com/Chambre-pour-nouveau-ne-38.html

    Pour la deuxième qui est utilisée pour supprimer un devis:

    le code source:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="devis-'.geturl($data['nom_devis']).'-'.intval($data['id_devis']).'.html">
    et l'url
    http://www.domaine.com/devis-Test-societe-3.html

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    ok donc les URL sont relativement libres dans le premier cas ? Si oui, il faut mettre la plus généraliste en dernier - elle fera ainsi office de else ou switch/default en quelque sorte (en bref, les inverser comme conseillé plus haut - le préfixe devis- permettant d'identifier toute la partie éponyme).

  7. #7
    Membre habitué Avatar de raffa
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 194
    Points : 159
    Points
    159
    Par défaut
    Maintenant c'est l'inverse.... j'en ai marre.

    [EDIT] Je m'excuse pour le p... mais je voulais dire que si je l'inverse, c'est l'inverse qui se produit.

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Ça ne fonctionne pas comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    RewriteEngine on
     
    RewriteRule ^devis-([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=act&do=deldevis&nom=$1&id=$2 [L]
    RewriteRule ^([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=mod_photo&desc=$1&id=$2 [L]


    Et vous avez bien gardé l'option [L] à la fin de chacune ? Il n'y a que ces règles ?

  9. #9
    Membre habitué Avatar de raffa
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 194
    Points : 159
    Points
    159
    Par défaut
    Citation Envoyé par julp Voir le message
    Ça ne fonctionne pas comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    RewriteEngine on
     
    RewriteRule ^devis-([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=act&do=deldevis&nom=$1&id=$2 [L]
    RewriteRule ^([a-zA-Z0-9_-]+)-([0-9]+)\.html$ index.php?action=mod_photo&desc=$1&id=$2 [L]


    Et vous avez bien gardé l'option [L] à la fin de chacune ? Il n'y a que ces règles ?
    Julp, tu es un ....
    un grand merci à toi de ta solution et de t'être intéressé a mon problème.
    ça marche et grâce à toi j'y vois plus clair dans les règles de réécriture.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ignorer les premières lignes a la lecture d'un fichier
    Par DJEcalcul dans le forum MATLAB
    Réponses: 4
    Dernier message: 10/04/2014, 18h52
  2. Ignorer les X premières lignes
    Par Laurent3131 dans le forum MATLAB
    Réponses: 22
    Dernier message: 19/04/2012, 18h10
  3. apache on debian ignores les images
    Par mariogarcia dans le forum Apache
    Réponses: 1
    Dernier message: 23/05/2006, 08h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo