Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Serveurs (Apache, IIS,...) > Apache
Apache Forum d'entraide Apache. Avant de poster : Cours Apache, FAQ Apache
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/11/2011, 18h15   #1
Invité de passage
 
Homme
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 2
Points : 2
Par défaut rediriger ancien domaine vers nouveau domaine

Bonjour,

Je souhaite rediriger mes anciens noms de domaines vers mon nouveau nom de domaine dans Apache.

Le nouveau nom de domaine est de la forme :
nouveaudomaine.com

J'utilise le CMS WordPress qui me permet d'accéder aux différentes langues de mon nouveaudomaine.com de la façon suivante:
nouveaudomaine.com => redirige vers le site en français
nouveaudomaine.com/en => redirige vers le site en anglais
nouveaudomaine.com/it => redirige vers le site en italien

Les anciens noms de domaine sont de la forme:
anciendomaine.en
anciendomaine.it

Je souhaite faire pointer :
anciendomaine.en vers nouveaudomaine.com/en
anciendomaine.it vers nouveaudomaine.com/it

Au niveau DNS et IP, anciendomaine.en et anciendomaine.it pointent bien vers le nouveau serveur (nouveaudomaine.com)

J'ai créé un virtualhost :
Code :
1
2
3
4
5
6
<VirtualHost *:80>
    DocumentRoot "C:/Apache2/htdocs/monsite/"
    ServerName nouveaudomaine.com
	ServerAlias anciendomaine1.en
</VirtualHost>
En faisant cela, lorsque je tape anciendomaine.en, j'arrive sur la page du nouveaudomaine.com qui est en français, c'est normal.
Lorsque je tape anciendomaine.en, je souhaiterais arriver sur la page nouveaudomaine.com/en

J'ai modifié mon virtualhost de cette façon:
Code :
1
2
3
4
5
6
<VirtualHost *:80>
    DocumentRoot "C:/Apache2/htdocs/monsite/"
    ServerName nouveaudomaine.com/en
	ServerAlias anciendomaine1.en
</VirtualHost>
J'ai redémarré le serveur Apache, mais lorsque je tape anciendomaine.en, j'arrive toujours sur la page du nouveaudomaine.com

Voici la ligne que j'ai rajouté dans le fichier host de mon serveur windows :
Code :
127.0.0.1 nouveaudomaine.com
Même en mettant
Code :
 127.0.0.1 nouveaudomaine.com/en
cela ne fonctionne pas.

Est ce que vous avez une idée de la façon dont je peux procéder ?
marcus94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2011, 18h25   #2
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 295
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 295
Points : 8 575
Points : 8 575
Un petit rappel sur les directives ServerName et ServerAlias : elles servent à indiquer des noms d'hôtes, des noms qui correspondent à des adresses IP. nouveaudomaine.com/en n'est pas un nom d'hôte (le caractère / est interdit dans les noms d'hôtes) donc tu ne peux pas mettre ça en paramètre de ServerName ou ServerAlias.

Tu veux rediriger le navigateur ou tu veux que la barre d'adresse du navigateur continue à afficher nouveaudomaine.en ?
__________________

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
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2011, 19h39   #3
Invité de passage
 
Homme
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 2
Points : 2
Je veux rediriger anciendomaine.en vers nouveaudomaine.com/en

Donc si je tape anciendomaine.en dans mon navigateur, ce sera nouveaudomaine.com/en qui s'affichera.

Le CMS que j'utilise gère les différentes langues de mon site de la façon suivante:
nouveaudomaine.com/en => redirige vers le site en anglais

Je ne peux pas le modifier en nouveaudomaine.en car ma direction souhaite que ce soit nouveaudomaine.com/en

Est ce que vous pensez qu'il y a un moyen de faire cela avec Apache ?
marcus94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/11/2011, 21h14   #4
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 295
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 295
Points : 8 575
Points : 8 575
Oui, il y a moyen de faire ça avec Apache. Ce que je ferais, histoire de séparer les choses c'est créer un hôte virtuel pour nouveaudomaine.com et un second hôte virtuel sans document root (pour des raisons de sécurité) pour regrouper tous les anciens domaines à rediriger. En faisant comme ça, on simplifie la configuration de la redirection :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<VirtualHost *:80>
    DocumentRoot "C:/Apache2/htdocs/monsite/"
    ServerName nouveaudomaine.com
</VirtualHost>

<VirtualHost *:80>
    ServerName anciendomaine.en
    ServerAlias anciendomaine.it

    RewriteEngine on
    RewriteCond %{HTTP_HOST} \.([^.]*)$
    RewriteRule .* http://nouveaudomaine.com/%1 [R=301,L]
</VirtualHost>
__________________

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
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/11/2011, 17h40   #5
Invité de passage
 
Homme
Administrateur systèmes et réseaux
Inscription : septembre 2011
Messages : 7
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Administrateur systèmes et réseaux
Secteur : High Tech - Matériel informatique

Informations forums :
Inscription : septembre 2011
Messages : 7
Points : 2
Points : 2
Je te remercie Mac pour ta solution. Elle fonctionne.

J'ai trouvé un autre moyen de faire les redirections :

Code :
1
2
3
4
<VirtualHost *:80>
ServerName anciendomaine.en
RedirectMatch permanent / http://nouveaudomaine/en
</VirtualHost>
marcus94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h49.


 
 
 
 
Partenaires

Hébergement Web