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 :

[.htaccess] Forcer le www mais garder les sous-domaines


Sujet :

Apache

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 60
    Points : 33
    Points
    33
    Par défaut [.htaccess] Forcer le www mais garder les sous-domaines
    Bonjour,
    je souhaiterais mettre un fichier htaccess sur mes sites et ainsi force le www.

    c'est à dire de passer de -http://monsite.fr à -http://www.monsite.fr

    j'ai trouvé des codes pour faire cela mais le hic c'est qu'il redirige également mais sous domaine sur le domaine principal.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^monsite.org$
    RewriteRule ^(.*) www.monsite.org... [QSA,L,R=301]
    On m'avait proposé ça aussi mais le sous domaine était quand même remplacer...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    #Obliger le www
    RewriteCond %{HTTP_HOST} ^exemple.com$
    RewriteRule ^(.*) http://www.exemple.com/$1 [QSA,L,R=301]
    #Obliger le sous domaine
    RedirectPermanent /repertoire-ssd1 http://ssd1.exemple.com
    Avez vous une idée du code ?
    Je suis sur un serveur dédié chez OVH mais toutefois j'aimerais trouver une solution pour les serveurs mutualisés.

    merci d'avance

  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
    Ton premier code devrait fonctionner correctement. Si ce n'est pas le cas, c'est qu'il y a un problème ailleurs je dirais. Est-ce que tu as d'autres règles dans ce .htaccess ? Peux-tu nous les donner ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 60
    Points : 33
    Points
    33
    Par défaut
    J'ai rien de spécial juste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteEngine on
    ErrorDocument 404 /404.html

  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
    Arf... Tu peux copier-coller les Rewrite... tels qu'ils sont sauf en changeant le nom du domaine, histoire de voir ce qu'il se cache derrière les points de suspension ?

    Sinon, y a un reverse proxy en frontal ? C'est une autre explication possible.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 60
    Points : 33
    Points
    33
    Par défaut
    Je force le www et le index.php / htm qui est supprimé pour laisser place au nom de domaine.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^www\.dom\.fr [NC]
    RewriteRule (.*) http://www.dom.fr/$1 [QSA,R=301,L]
    ErrorDocument 404 /404.html
    RewriteCond %{THE_REQUEST} ^GET\ .*/index\.(php|html)\ HTTP
    RewriteRule ^(.*)index\.(php|html)$ /$1 [R=301,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
    Forcément, avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteCond %{HTTP_HOST} !^www\.dom\.fr [NC]
    qui signifie littéralement "tout ce qui n'est pas www.dom.fr", tes sous-domaines sont également redirigés s'ils pointent sur ce document root.

    Donc de deux choses l'une : soit il est normal que les sous-domaines pointent sur ce même domaine et dans ce cas il faut changer la condition de redirection ; soit ce n'est pas normal et il faut voir ce qui ne va pas, en particulier la configuration des hôtes virtuels.

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 60
    Points : 33
    Points
    33
    Par défaut
    j'ai mis et le site ne fonctionne plus :s

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    RewriteEngine on
    RewriteRule (.*) http://www.dom.fr/$1 [QSA,R=301,L]
    ErrorDocument 404 /erreur-404.htm
    RewriteCond %{THE_REQUEST} ^GET\ .*/index\.(php|html)\ HTTP
    RewriteRule ^(.*)index\.(php|html)$ /$1 [R=301,L]

  8. #8
    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, là tu es un peu radical : tu as créé une boucle infinie en redirigeant systématiquement tout sur http://www.dom.fr/, y compris ce qui est déjà http://www.dom.fr/... Il faut laisser une condition : quand je disais de changer la condition, je voulais dire la préciser davantage, dire par exemple "si dom.fr" (sans le www) pour que les sous-domaines continuent de fonctionner correctement, ce que tu donnais au début, quoi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^dom\.fr [NC]
    RewriteRule (.*) http://www.dom.fr/$1 [QSA,R=301,L]
    ErrorDocument 404 /404.html
    RewriteCond %{THE_REQUEST} ^GET\ .*/index\.(php|html)\ HTTP
    RewriteRule ^(.*)index\.(php|html)$ /$1 [R=301,L]
    Mais vu le problème que tu rencontres en ce moment, pour tester il va falloir que tu purges le cache de ton navigateur avant de pouvoir tester.

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 60
    Points : 33
    Points
    33
    Par défaut
    c'est déjà mieux mais mon sous domaine est toujours redirigé vers le www :s

  10. #10
    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
    Trop bizarre... Tu utilises quelle URL pour tester ? Ca donne la même chose si tu commentes les 2 dernières lignes de ton .htaccess (les 2 lignes sur le .php et .html) ?

Discussions similaires

  1. Mon htaccess ne fonctionne pas avec les sous-domaines
    Par pierrot10 dans le forum Apache
    Réponses: 3
    Dernier message: 04/06/2012, 08h54
  2. Réponses: 2
    Dernier message: 21/02/2012, 09h41
  3. Un .htaccess pour supprimer les sous-domaines
    Par zarohn dans le forum Apache
    Réponses: 8
    Dernier message: 10/05/2011, 03h23
  4. Réponses: 5
    Dernier message: 05/03/2009, 13h09
  5. masquer un champs mais garder les evenements ?
    Par Pymm dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 21/07/2005, 12h33

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