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 :

rewriting transparent vers un autre domaine


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 19
    Par défaut rewriting transparent vers un autre domaine
    Bonjour,

    Cela fait quelques heures que je planche sur un problème, et j'espère que quelqu'un ici pourra m'apporter la solution
    quand j'utilise un fichier .htaccess avec RewriteEngine on
    et RewriteRule, parfois la vrai adresse est repercuté dans la barre d'url de mon navigateur, et parfois non. Qu'est ce qui fait cette différence?

    Pourquoi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule   ^new(.*)   /test$1
    laisse bien http://www.domaine.fr/new/test.html et affiche le fichier de http://www.domaine.fr/test/test.html
    que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule   ^(.*)   /test$1
    ne fonctionne pas
    et que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule   ^blog(.*)   http://www.milchior.fr/arthurrainbow/$1
    fonctionne bien, mais que quand je cherche http://www.arthurrainbow.fr/blog mon navigateur indique comme adresse http://www.milchior.fr/arthurrainbow/ ?

    Puisque online.net ne permet plus qu'un nom de domaine en alias pointe vers un répertoire ou sous-domaine, ce que je cherche à faire ressemblerait à

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule   ^(.*)   http://www.milchior.fr/arthurrainbow/$1
    autrement dit que dès que quelqu'un cherchera une page sur arthurrainbow.fr/quelquechose il verra http://www.milchior.fr/arthurrainbow/quelquechose mais sans que le visiteur ne sache qu'il n'est pas sur arthurrainbow.fr

    Pour les informations, je suis hebergé par online.net les informations sur le serveur selon php info sont
    _SERVER["SERVER_SOFTWARE"] Apache/1.3.34 (Ubuntu) mod_vhost_online/1.2 mod_fastcgi/2.4.2 mod_log_online/0.1

  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
    Compare les règles 1 et 3 que tu donnes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule   ^new(.*)   /test$1
    vs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteRule   ^blog(.*)   http://www.milchior.fr/arthurrainbow/$1
    Quelle différence majeure fais-tu ? Dans le second cas, il y a http://... dans le second membre de RewriteRule. C'est ce qui explique la différence de comportement : sans http://... la réécriture reste interne au serveur alors qu'avec http://... la réécriture est "externe" et il y a redirection du navigateur.

    Ensuite, pour la seconde règle, elle est un peu trop "large" car le (.*) du premier membre correspond à tout. Et il faut savoir une chose primordiale concernant la réécriture d'URL : Apache n'arrête de réécrire les URL que lorsqu'il a "convergé", i.e. qu'il ne peut plus réécrire. En mettant (.*), tu crées en fait une boucle de réécriture : /nimportequoi est réécrit en /testnimportequoi qui repart dans un cycle de réécriture, ce qui donne /testtestnimportequoi qui repart, etc.. Cf. mes explications.

    Pour répondre à ta question initiale, soit tu fais des réécritures internes (sans http://... dans le second membre de RewriteRule), ce qui suppose que les 2 noms de domaine pointent vers le même document root ou à peu près ; soit tu passes par le module proxy d'Apache.

    Dans tous les cas, cf. la doc Apache.

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/12/2011, 09h40
  2. Réponses: 2
    Dernier message: 12/09/2008, 11h20
  3. Rediriger un domaine enregistré vers un autre domaine
    Par loopback dans le forum Hébergement
    Réponses: 3
    Dernier message: 21/07/2008, 00h17
  4. Réponses: 4
    Dernier message: 23/01/2008, 17h55
  5. Migration d'un site sharePoint vers un autre domaine
    Par xdi1984 dans le forum SharePoint
    Réponses: 5
    Dernier message: 22/05/2007, 17h26

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