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 :

Rediriger tous les sous domaines sauf le principal


Sujet :

Apache

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Points : 44
    Points
    44
    Par défaut Rediriger tous les sous domaines sauf le principal
    Bonjour,

    J'ai besoin de votre aide au niveau d'un htaccess, voilà ce que je cherche à faire.

    Il faut que tous les sous domaines redirigent vers un dossier spécifique. J'ai la réécriture pour cela, elle marche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    RewriteCond %{HTTP_HOST} ([a-z0-9A-Z]+).mondomaine.com
    RewriteRule ^$ site/index.php?nom=%1 [L]
    A côté, pour le domaine principal www.mondomaine.com j'utilise Zend Framework il me faut donc utiliser leur réécriture :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
    Je ne sais pas comment combiner les deux.

    Existe-t-il un moyen de faire si sous domaine est différent de www ... sinon ... ?

  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
    Points : 12 977
    Points
    12 977
    Par défaut
    Oui : dans ton premier groupe de RewriteXxx, tu ajoutes la condition "et HTTP_HOST différent de www.domaine.com", ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteCond %{HTTP_HOST} ([a-z0-9A-Z]+).mondomaine.com
    RewriteCond %{HTTP_HOST} !www.mondomaine.com
    RewriteRule ^$ site/index.php?nom=%1 [L]
    idem pour Zend, en forçant leur application que pour www.domaine.com :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RewriteCond %{HTTP_HOST} www.mondomaine.com
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Points : 44
    Points
    44
    Par défaut
    Super merci bien et si j'ai deux domaines il suffit de mettre ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    RewriteCond %{HTTP_HOST} www.domaine1.com
    RewriteCond %{HTTP_HOST} www.domaine2.com
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
    C'est bien cela ?

  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
    Points : 12 977
    Points
    12 977
    Par défaut
    Dans ce cas, il faut mettre un [OR] après la première règle car par défaut, c'est un ET logique entre chaque règle : il faudrait alors que HTTP_HOST matche à la fois www.domaine1.com et www.domaine2.com, ce qui n'est pas possible. Ou alors, faire en une fois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteCond %{HTTP_HOST} www.(domaine1|domaine2).com
    Je ne suis pas sûr de la syntaxe exacte, à vérifier.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Points : 44
    Points
    44
    Par défaut
    Donc sinon ce code est valide ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    RewriteCond %{HTTP_HOST} www.domaine1.com [OR]
    RewriteCond %{HTTP_HOST} www.domaine2.com
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]

  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
    Points : 12 977
    Points
    12 977
    Par défaut
    A vue de nez, oui, mais il faut essayer. C'est dur de dire comme ça si ça marchera.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Points : 44
    Points
    44
    Par défaut
    Je viens de tester en ne mettant qu'un domaine pour le moment afin de ne pas trop complexifier. Hélas tout mes sous domaines atterrissent sur l'adresse principale, je ne comprend pas.

    Si je commente la réécriture pour Zend, cela marche impeccable pour les sous domaines mais si je la réactive c'est elle qui est pris en compte.

    Comment faire ?

    J'ai bien mis en premier ma réécriture pour mes sous domaines puis celle pour Zend. La condition RewriteCond %{HTTP_HOST} www.mondomaine.com n'empêche en rien mes sous domaines de l'utiliser.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2005
    Messages : 58
    Points : 44
    Points
    44
    Par défaut
    J'ai ma solution. La règle de Zend Framework contient 2 RewriteRules il faut donc indiquer 2 fois le RewriteCond !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    RewriteCond %{HTTP_HOST} www.mondomaine.com
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
     
    RewriteCond %{HTTP_HOST} www.mondomaine.com
    RewriteRule ^.*$ index.php [NC,L]
    Et voilà

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

Discussions similaires

  1. Tous les sous domaine d'un domaine pointe sur la même IP
    Par olysmar2 dans le forum Domaines
    Réponses: 3
    Dernier message: 15/04/2015, 13h36
  2. Réponses: 1
    Dernier message: 19/03/2010, 09h41
  3. Réponses: 5
    Dernier message: 05/03/2009, 13h09
  4. rediriger tous les jsp vers la page index
    Par Smix007 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 04/04/2007, 23h41
  5. Réponses: 1
    Dernier message: 26/10/2006, 17h44

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