Page 1 sur 1
Redirection sous-domaine virtuel
Posté : 16 août 2010, 17:58
par joelG
Bonjour
J'ai un site internet avec un nom de domaine comme "nomdebase.fr" avec une page d'entrée nommée "index.htm".
Par ailleurs j'ai un autre nom de domaine comme "autrenom.com" qui redirige automatiquement vers "nomdebase.fr"
Je cherche quel code php je pourrais mettre en entête de ma page "index.htm" pour que les visiteurs qui arrivent depuis "autrenom.com" (et seulement ceux là ) soient redirigés vers un sous répertoire "nomdebase.fr/autrenom/" ou directement vers la page "nomdebase.fr/autrenom/index.htm", les autre visiteurs liraient la page index.htm d'origine.
En espérant avoir été suffisamment clair sur ma demande, je vous remercie par avance pour vos réponses, si mon problème a une solution.
Re: Redirection sous-domaine virtuel
Posté : 16 août 2010, 19:06
par Castor Gaspard
Hi !
Tu pourrais utiliser la variable $_SERVER['HTTP_REFERER'] pour détecter la provenance du visiteur et le rediriger. Attention ! Les redirections doivent toujours être faites avant l'affichage de la page.
Cependant, je me demande s'il ne sera pas préférable d'utiliser un fichier .htaccess avec une redirection de type 301. Moi, j'utiliserai plutôt cette solution, plus propre, moins aléatoire, puisque, apparemment, tu veux une redirection systématique.
Les autres contributeurs de ce forum, qui sont des experts, te diront mieux que moi.
Cordialement,
Gaspard
Re: Redirection sous-domaine virtuel
Posté : 17 août 2010, 10:25
par sylvaing26
Euh ... En redirigeant tout simplement ton domaine autrenom.com chez ton registrar vers nom.com/dossier je pense que c'est le plus simple
Re: Redirection sous-domaine virtuel
Posté : 17 août 2010, 10:51
par joelG
En redirigeant tout simplement ton domaine autrenom.com chez ton registrar vers nom.com/dossier je pense que c'est le plus simple
Merci pour cette réponse, mais ce n'est pas possible, je ne peux que rediriger vers un autre domaine mais pas dans un dossier
Ce que je cherche exactement c'est de traduire en code PHP l'algorithme suivant:
récupérer le nom de domaine qui a mené à la page nomdebase.fr/index.htm ( avec la variable $_SERVER['HTTP_REFERER'] comme le propose Castor) dans une variable $Provenance
Si $Provenance="autrenom.com" alors rediriger vers nomdebase.fr/autrenom/index.htm
Sinon Rien (poursuivre et executer le code HTML de la page )
Ce code serait placé au début de ma page nomdebase.fr/ index.htm actuelle (Si j'ai bien compris il devrait être placé avant tout code HTML de la page)
Je ne pense pas que ce soit difficile à faire pour qui maitrise le langage PHP , mais je découvre à peine le PHP

Re: Redirection sous-domaine virtuel
Posté : 17 août 2010, 11:16
par sylvaing26
Tu mets que ce code dans la page racine de ton site nomdebase.fr et tu créé un fichier index_bis.php par exemple qui contient ce qui doit s'affichier
si le visiteur ne provient pas de autrenom.com.
if($_SERVER['HTTP_REFERER'] == 'http://autrenom.com')
{
echo "<script language=\"JavaScript\">
<!--
document.location=\"nomdebase.fr/autrenom/index.htm\;
//-->
</script>";
}
else {
include("index_bis.php");
}
Et le must, car javascript n'est pas activé chez tout le monde c'est de mettre plutot ca :
if($_SERVER['HTTP_REFERER'] == 'http://autrenom.com')
{
echo '
<html>
<head>
<meta http-equiv="refresh" content="0;url=nomdebase.fr/autrenom/index.htm">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Redirection </title>
</head>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<p> </p>
</body>
</html>
';
}
else {
include("index_bis.php");
}
Re: Redirection sous-domaine virtuel
Posté : 17 août 2010, 16:16
par AB
Non NE PAS utiliser la variable $_SERVER['HTTP_REFERER']. Ce n'est pas une valeur de confiance, statistiquement elle n'est correctement renseignée qu'une à deux fois sur 10.
Sinon la deuxième solution proposée par Castor Gaspard avec la redirection dans un .htaccess, l'as tu essayée ?
Re: Redirection sous-domaine virtuel
Posté : 17 août 2010, 17:50
par joelG
Non NE PAS utiliser la variable $_SERVER['HTTP_REFERER']. Ce n'est pas une valeur de confiance, statistiquement elle n'est correctement renseignée qu'une à deux fois sur 10.
Sinon la deuxième solution proposée par Castor Gaspard avec la redirection dans un .htaccess, l'as tu essayée ?
Effectivement cela ne semble pas marcher avec la variable $_SERVER['HTTP_REFERER'] , mais je n'ai pas essayé un .htaccess ne sachant absolument pas comment il faut s'y prendre. Pouvez-vous me renseigner ?
Re: Redirection sous-domaine virtuel
Posté : 17 août 2010, 19:15
par AB
Y'a un lien d'explications ici
http://www.webrankinfo.com/dossiers/deb ... directions
donc dans un fichier que tu nommeras .htaccess situé à la racine du site que tu veux rediriger tu pourrais mettre
Code : Tout sélectionner
RedirectPermanent /index.html http://www.nomdebase.fr/autrenom/index.htm
Attention quand tu met ce fichier sur le serveur distant car s'il n'accepte pas les fichiers de type .htacces ça fera planter le site où ce fichier est placé. Donc bien vérifier et supprimer ce fichier en cas de problème.
Sinon tu peux aussi supprimer la page index.html et la remplacer par une page index.php et ainsi faire une redirection php avec un header (c'est expliqué un peu plus bas dans le lien que je t'ai donné)