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 toujours avec www


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut Url rewriting toujours avec www
    Bonjour a tous
    je voudrais mettre dans mon htaccess une fonctionnalité assez simple

    toutes les url du type

    http://mondomaine.com?toutes_les_var
    rediriger vers
    http://www.mondomaine.com?toutes_les_var

    a savoir que l'url re-rewriting fonctionne deja pour les erreurs 404 et plusieurs autres conditions ( donc mon mode htaccess est activé)

    deja essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule http://mondomaine.com$ http://www.mondomaine.com$

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{HTTP_HOST} ^<a href="http://www.(.*" target="_blank">www.(.*</a>)
    RewriteRule ^(.*) http://%1/$1
    moi faire blocage.

    En vous remerciant

  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
    Cà serait plutôt un truc qui se rapproche de ton deuxième test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{HTTP_HOST} !^www\.(.*)
    RewriteRule (.*) http://www.%1/$1 [R,L]
    A tester, j'ai fait ça à vue

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    Cà serait plutôt un truc qui se rapproche de ton deuxième test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{HTTP_HOST} !^www\.(.*)
    RewriteRule (.*) http://www.%1/$1 [R,L]
    A tester, j'ai fait ça à vue
    Super bien vue, je n'avais pas mis le "!" que j'interprete la comme "toutes les url que ne sont pas du type www ..."
    mais justement, vu que l'url "n'est pas du type" www etc, et ben avec le code que tu as mis
    ca met http:///www..com puisque (.*) ne renvoit rien ...

    enfin c'est comme ça que je le vois
    je poursuit les investigations, ta technique est superpropre

    Par contre, je vois toute mon ignorance en terme d'url rewriting

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{HTTP_HOST} !^www\.(.*)
    RewriteRule (.*) $1 [R,L]
    ce bout de code me renvoit l'url passée, avec tout le document root ( home/../ )... je voulais juste voir ce que je recevais dans $1 mais ça me renvoit un pavé monstrueux

  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
    Je crois comprendre le problème : ce qui est entre parenthèse est vide car le fait que %{HTTP_HOST} confirme le premier bout de la condition (!^www\.) fait valider la règle et le parser d'expression régulière ne prend pas la peine d'aller plus loin

    Bref, faut gruger : répéter la condition mais de manière plus large pour récupérer cette fois-ci un %1 valide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteCond %{HTTP_HOST} !^www\.
    RewriteCond %{HTTP_HOST} ^[^.]+\.(.*)$
    RewriteRule (.*) http://www.%1/$1 [R,L]

  5. #5
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 70
    Par défaut
    Bon j'ai honte de re-poster la mister _mac_ mais j'y arrive toujours pas.
    En fait le test renvoie maintenant une valeur sans un point au milieu , ce qui donne www.com ( au passage, c'est un nom de domaine qui existe).

    C'est fou, je comprend le code littéralement mais ca me renvoie tjrs la meme chose

    pas d'autres idées ? je vais me ramener a de la redirection bien moche coté php ....

  6. #6
    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
    Pas compris : tu utilises quel code pour tester ? Celui que je t'ai donné, le dernier avec les 2 RewriteCond, je l'ai testé sur mon EasyPHP et ça marchait nickel.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/12/2007, 14h45
  2. Réponses: 2
    Dernier message: 14/11/2007, 14h49
  3. [URL Rewriting] Problème avec un paramètre
    Par antitrust56 dans le forum Apache
    Réponses: 11
    Dernier message: 07/11/2007, 18h40
  4. Réponses: 3
    Dernier message: 31/07/2007, 16h40
  5. [URL Rewriting] problème avec sous domaine
    Par Booyakha dans le forum Apache
    Réponses: 1
    Dernier message: 31/07/2007, 16h31

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