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 http://monsite.com vers http://www.monsite.com/


Sujet :

Apache

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut Rediriger http://monsite.com vers http://www.monsite.com/
    Bonjour,

    Je cherche en ce moment la syntaxe qui me permettrait de rediriger http://monsite.com/ vers http://www.monsite.com/ (en gros, de forcer l'affichage de "www" dans tous les cas).

    Pour cela j'aimerais utiliser RedirectMatch

    Il s'agirait également de mémoriser la page courante avant la redirection, de façon à ce que http://monsite.com/forum.php redirige vers http://www.monsite.com/forum.php

    Je peine à trouver cette syntaxe, et c'est pas faute d'avoir cherché.

    Votre aide me sera précieuse...

    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
    Si j'en crois la doc Apache sur RedirectMatch, tu ne peux pas utiliser RedirectMatch seul pour faire une redirection en fonction du hostname de l'URL car :
    Citation Envoyé par Doc Apache
    The supplied regular expression is matched against the URL-path
    Donc, il faut que tu mettes ton RedirectMatch dans la section <VirtualHost> de monsite.com, à supposer que cette section soit différente de celle de www.monsite.com.

    Mais pourquoi vouloir utiliser RedirectMatch ? Avec la réécriture d'URL tu peux faire ça sans avoir à modifier le fichier httpd.conf, ce qui est relativement utile si tu es en hébergement mutualisé. Dans ce cas, dans le .htaccess se trouvant à la racine du site accédé par http://monsite.com/ :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^monsite.com
    RewriteRule (.*) http://www.monsite.com/$1 [QSA,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
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    J'aurais souhaité utiliser RedirectMatch pour conserver les url réécrites durant la redirection.

    Je m'explique : admettons que je réécrive index.php en index.test avec l'url rewriting

    L'adresse http://monsite.com/index.test sera redirigé vers http://www.monsite.com/index.php et non vers http://www.monsite.com/index.test, ce que je préférerais...

    Je vais tenter le coup de RedirectMatch dans ma section VirtualHost, même si j'ignore encore le fonctionnement de cette partie, car je ne m'y suis jamais intéressé de prêt.
    Comment dois-je procéder ? Je dois simplement y placer un fichier .htaccess avec mon RedirectMatch ?

    Et connaitrais-tu la syntaxe de redirection avec RedirectMatch stp ?

    Merci d'avance

  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
    Pourquoi ne pas essayer avec ma RewriteRule ? Elle va rediriger http://monsite.com/index.test vers http://www.monsite.com/index.test. L'intérêt de ma syntaxe c'est que tu peux la mettre dans un .htaccess, donc pas besoin de redémarrer Apache, et ça marchera même si monsite.com et www.monsite.com partagent la même section <VirtualHost>, ce qui n'est pas le cas du RedirectMatch.

    Citation Envoyé par Emotion Voir le message
    Je vais tenter le coup de RedirectMatch dans ma section VirtualHost, même si j'ignore encore le fonctionnement de cette partie, car je ne m'y suis jamais intéressé de prêt.
    Comment dois-je procéder ? Je dois simplement y placer un fichier .htaccess avec mon RedirectMatch ?
    Ben si tu modifies ta section <VirtualHost>, tu n'as pas besoin de .htaccess. Ce qui me gêne avec RedirectMatch, mais c'est à vérifier, c'est qu'il me semble qu'on ne peut pas mettre de règle générique du style .*, mais je peux me tromper. Ca donnerait qqch comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RedirectMatch (.*) http://www.monsite.com$1
    Mais tu ne dois mettre ça que dans le VH de monsite.com, car sinon ça va boucler.

    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
    Inscrit en
    Octobre 2005
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 122
    Points : 55
    Points
    55
    Par défaut
    Ok, tout est rentré dans l'ordre, j'utilise désormais l'url rewriting

    Si je veux que http://monsite.com/index.test redirige vers http://www.monsite.com/index.test (et non vers http://www.monsite.com/index.php) je dois placer la règle avant toutes les autres règles de réécriture. Voilà la petite bourde qui m'avait induit en erreur.

    Merci de ton aide.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 09/03/2012, 22h46
  2. Réponses: 1
    Dernier message: 24/01/2011, 15h09
  3. Liens ne fonctionnent pas avec monsite.com mais avec www.monsite.com
    Par mickey83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 24/04/2010, 10h06
  4. Réponses: 1
    Dernier message: 15/12/2009, 21h16
  5. Réponses: 2
    Dernier message: 19/07/2008, 22h42

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