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 :

[URL Rewriting] Flag htacces [L] capricieux


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Par défaut [URL Rewriting] Flag htacces [L] capricieux
    Bonjour

    J'ai un soucis plutôt étrange.
    J'utilisais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    RewriteEngine on
     
    # Acces direct aux ressources public
    RewriteRule scripts/(.*)$ public/scripts/$1[L]
    RewriteRule styles/(.*)$ public/styles/$1 [L]
    RewriteRule images/(.*)$ public/images/$1 [L]
     
    # Acces au routage vers le couple controleur/action approprié
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
    et ça fonctionne très bien.
    Je voulais utiliser des répertoires "template" appelé ici "classic".
    J'utilise donc


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    RewriteEngine on
     
    # Acces direct aux ressources public
    RewriteRule scripts/classic/(.*)$ app/template/classic/public/scripts/$1 [L]
    RewriteRule styles/classic/(.*)$ app/template/classic/public/styles/$1 [L]
    RewriteRule images/classic/(.*)$ app/template/classic/public/images/$1 [L]
     
    # Acces au routage vers le couple controleur/action approprié
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
    Avec ceci, un script "toto.js", par exemple, sera bien modifié en app/template/classic/public/scripts/toto.js mais le [L] ne fonctionnera pas, je me retrouve alors avec
    index.php?url=app/template/classic/public/images/toto.js

    Je ne comprend pas ce qui fait cette différence de résultats
    Articles sur developpez.com
    - Gestion des exceptions avec PHP5
    - Chiffrement et hash en PHP contre l'attaque Man in the middle
    - Aedituus - Espace membre sécurisé en PHP5

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    J'ai déjà vu ce genre de truc et j'avoue ne pas comprendre non plus Essaie en mettant un NS sur ta dernière règle car c'est elle qui est appelée alors qu'elle ne devrait pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L,NS]

  3. #3
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Par défaut
    ça ne change rien
    Bon au moins, si tu me dis que tu as déjà vu ça, ça veut dire que ça vient peut-être pas de moi
    Bon, n'empêche que je ne sais pas trop contourner ça

    Merci de ton aide en tout cas
    Articles sur developpez.com
    - Gestion des exceptions avec PHP5
    - Chiffrement et hash en PHP contre l'attaque Man in the middle
    - Aedituus - Espace membre sécurisé en PHP5

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Arf... Pas très logique tout ça, quand même. Ca donne quoi si tu supprimes la ligne vide entre tes RewriteRule ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ewriteEngine on
     
    # Acces direct aux ressources public
    RewriteRule scripts/(.*)$ public/scripts/$1[L]
    RewriteRule styles/(.*)$ public/styles/$1 [L]
    RewriteRule images/(.*)$ public/images/$1 [L]
    # Acces au routage vers le couple controleur/action approprié
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,NS,L]
    Je soupçonne Apache de considérer que parce qu'il y a un saut de ligne, ce sont 2 groupes de règles différents qui doivent être appliqués malgré le L

  5. #5
    Rédacteur

    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 695
    Par défaut
    idem
    J'ai essayé aussi avec des tabulations partout, puis que des espaces partout, sans commentaires, sans ligne vide...
    Rien...
    La seule chose qui fonctionne, c'est changer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule scripts/classic/(.*)$
    en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule scripts/(.*)$
    pour chacune des lignes (et bien sur en modifiant les appels respectifs depuis le site)
    Articles sur developpez.com
    - Gestion des exceptions avec PHP5
    - Chiffrement et hash en PHP contre l'attaque Man in the middle
    - Aedituus - Espace membre sécurisé en PHP5

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

Discussions similaires

  1. [MySQL] Regle d'écriture htacces & url rewriting
    Par Aloneghost dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 09/11/2010, 14h07
  2. [URL Rewriting] Flag Last non pris en compte
    Par waouh dans le forum Apache
    Réponses: 4
    Dernier message: 26/07/2010, 21h44
  3. Réponses: 1
    Dernier message: 24/05/2010, 20h45
  4. [URL Rewriting] flag last [L] ne fonctionnant pas
    Par Yann_du_sud dans le forum Apache
    Réponses: 2
    Dernier message: 22/05/2008, 14h23
  5. [Débutant]infos ds session sans cookie ? url rewriting ?
    Par Satanas_et_diabolo dans le forum ASP
    Réponses: 8
    Dernier message: 10/10/2006, 17h13

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