Bonsoir,

j'aurais une question à poser... J'aimerais pouvoir rediriger un internaute vers une page donnée en fonction de la page d'où il vient...

Par exemple, si il trouve la page via Google, il serait redirigé vers google.html, tandis que si il a cliqué sur un lien venant de machin.com, il serait redirigé vers machin.html...

Existe-t-il des solutions à cela ? Si oui, lesquelles svp ?

Si quelqu'un avait une réponse à cette question, je le remercie de me la communiquer Smiley smile
Via un HTTP referer oui celà est possible
RewriteCond %{HTTP_REFERER} ^http://.*\.nomdedomaineenparticulier\.(com|net)/.*$
RewriteRule .* h**p://www.site-ou-mes-visiteurs-seront-envoyes.html [R]

Il convient de créer autant de ligne que de clause conditionnelle ... Smiley cligne
Modifié par Gunner4902 (26 Feb 2007 - 00:07)
Merci pour ton intervention Smiley smile

Vu la forme de la chose, je suppose que ceci est à placer dans l'htaccess de la racine du serveur ?
tout à fait Smiley cligne
Si ton problème est résolu, merci de mettre [résolu] devant le titre de ton premier post, merci.
Modifié par Gunner4902 (26 Feb 2007 - 01:23)
Bah pas tout à fait résolu, malheureusement... J'ai donc créé un fichier .htaccess à la racine de mon serveur, j'ai placé ces lignes dedans en modifiant le nécessaire, mais malheureusement cela ne marche pas... Smiley decu
Tu es sûr que ton navigateur envoie bien le referer ? Tous ne le font pas forcément et sur certains il s'agit d'une option désactivable.
Bonjour,

Penser à activer la réécriture d'URL dans le .htaccess Smiley cligne


RewriteEngine on

RewriteCond...


cela dit, HTTP_REFERER est une méthode peu fiable (champ non envoyé par toutes les configurations utilisateurs).
Administrateur
Il est possible de l'écrire également en PHP, et non pas de rediriger mais d'afficher directement la page nécessaire via un include.

à l'arrache, pas testé :
if(preg_match('/google/i',$_SERVER['HTTP_REFERER'])) {
  include('google.html');
}