Aller au contenu

Redirection en fonction de l'origine des visiteurs


Sujets conseillés

Bonjour à tous,

Je me permets de faire appel à vos connaissances pour intégrer un fichier htaccess à mon site qui répondrait à un besoin particulier. Mon site dispose d'un forum, et je veux contôler l'origine des visiteurs de ce forum. Je m'explique :

- Je voudrais qu'il ne soit pas possible d'accéder au forum sans passer d'abord par le site, en cliquant sur le lien "forum" qui est sur ma home, mais que les forumeurs puissent ensuite naviguer et poster sur le forum sans encombre.

- Il faudrait également que je puisse préciser certaines exclusions, pour que les modérateurs du forum ne soient pas concernés par cette restriction, en indiquant dans le htaccess leur adresse ip.

- Enfin, il faudrait aussi que les robots ne soient pas non plus concernés par cette restriction.

- Dans l'idéal, j'aimerais aussi que ceux qui ont fait une recherche via Google et qui cliquent sur un lien direct vers un sujet du forum ne soient pas redirigés non plus vers le site, mais puissent accéder directement au sujet concerné (par opposition à ceux qui ont enregistré un lien direct vers l'index du forum), mais je ne suis sûr que ce soit possible.

L'URL du site : www.monsite.fr et du forum www.monsite.fr/forum

Mon .htaccess actuel :

Options +FollowSymLinks

Options +Indexes

RewriteEngine On

RewriteBase /

RewriteCond %{HTTP_REFERER} !^http://www\.monsite\.fr/ [NC]

RewriteCond %{REMOTE_ADDR} !12.345.67.89$

RewriteRule ^ http://www.monsite.fr [R=301,L]

Ce qui fonctionne avec ça : les visiteurs qui tentent d'accéder au forum directement sans être passés par le site (lien direct ou recherche google) sont redirigés sur la home du site, et peuvent ensuite accéder au forum en cliquant sur le lien vers le forum. Les exceptions par IP sont également bien gérées par RewriteCond %{REMOTE_ADDR} !12.345.67.89$.

Ce qui ne fonctionne pas : une fois sur le forum, les utilisateurs peuvent le parcourir. Mais s'ils tentent de poster un message, ils sont de nouveau redirigés sur la home du site (par contre, le message est bien posté) : c'est mon plus gros problème. De plus, je n'ai trouvé aucune exception qui fonctionne pour autoriser l'accès au robots.

Merci par avance de votre aide !

Lien vers le commentaire
Partager sur d’autres sites

Pour commencer, je pense que c'est un très mauvais calcul :

- pour commencer, quelqu'un qui clique sur un lien depuis un moteur de recherche, désire arriver TOUT DE SUITE sur la ressource qui l'intéresse (et c'est la moindre des choses). Si tu lui changes la page, sois assuré qu'il reviendra sur le moteur et cliquera sur un autre résultat.

- par ailleurs, les moteurs de recherche te pénaliseront pour cette redirection abusive : présenter un contenu différent à un moteur de recherche et à un utilisateur s'appelle du cloaking. La seule exception qui puisse être tolérée est en cas de nécessité d'inscription pour afficher le contenu, sur les sites traitant d'actualité.

Sinon, pour la partie technique, il est nécessaire d'autoriser l'affichage pour ceux qui auraient un referer vide (Cas du favori, par exemple)

Pour ce qui est du post de message, où la page de traitement est-elle située (quelle est son url) ?

Et pour finir, quel besoin as-tu de forcer l'affichage de ta page d'accueil pour les utilisateurs externes ?

Lien vers le commentaire
Partager sur d’autres sites

Merci pour ta réponse.

Pour commencer, je pense que c'est un très mauvais calcul :

- pour commencer, quelqu'un qui clique sur un lien depuis un moteur de recherche, désire arriver TOUT DE SUITE sur la ressource qui l'intéresse (et c'est la moindre des choses). Si tu lui changes la page, sois assuré qu'il reviendra sur le moteur et cliquera sur un autre résultat.

Je suis d'accord, c'est justement quelque chose que je cherche à éviter.

- par ailleurs, les moteurs de recherche te pénaliseront pour cette redirection abusive : présenter un contenu différent à un moteur de recherche et à un utilisateur s'appelle du cloaking. La seule exception qui puisse être tolérée est en cas de nécessité d'inscription pour afficher le contenu, sur les sites traitant d'actualité.

Je vois ce que tu veux dire. Mais mon problème est qu'il y a beaucoup de travail fait pour le site, à destinations en particulier des membres du forum, mais que ceux-ci ont bookmarké directement le forum et ne passent du coup plus par le site.

L'impact négatif si les robots interprètent cette redirection comme du cloaking va-t-il être uniquement vis-à-vis du forum, ou aussi du site ?

Sinon, pour la partie technique, il est nécessaire d'autoriser l'affichage pour ceux qui auraient un referer vide (Cas du favori, par exemple)

Dans ce cas, ce serait justement peut-être plus simple de ne redirigerque ceux qui ont mis le lien direct vers le forum dans les favoris ? Du coup, ceux accèdent via un moteur de recherche ne seraient pas impactés ?

Pour ce qui est du post de message, où la page de traitement est-elle située (quelle est son url) ?

Ca donne quelque chose comme ça :

Nouveau message : http://www.monsite.fr/forum/posting.php?mode=post&f=4

Réponse dans un sujet : http://www.monsite.fr/forum/posting.php?mo...p;f=4&t=877

Réponse avec citation : http://www.monsite.fr/forum/posting.php?mo...f=9&p=15828

Et pour finir, quel besoin as-tu de forcer l'affichage de ta page d'accueil pour les utilisateurs externes ?

Ben, pas vraiment besoin, en fait. Juste ceux qui accèdent via leurs favoris...

Lien vers le commentaire
Partager sur d’autres sites

Tu prends le souci par le mauvais bout, alors.

Si tes membres accèdent directement au forum plutôt qu'au site, c'est parce qu'il répond parfaitement à leurs attentes. Dans ce cas, pourquoi les forcer à voir ton site avant ? Il faudrait que tu trouves d'autre moyens de le promouvoir auprès d'eux : annonces dans le forum, par exemple.

Quant à la pénalisation pour cloaking, elle serait valable pour tout le domaine.

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

Déja testé les annonces sur le forum, ça n'a pas de résultat. D'autre part, la question n'est pas là : le forum est là uniquement pour créer du trafic sur le site, donc si je ne parviens pas à faire passer les visiteurs par la home, je vais devoir carrément le supprimer. Comme je n'ai pas tellement envie d'en arriver à de telles extrémités, je cherche d'autres solutions...

Donc au-delà de la très intéressante partie "éthique" de la discussion, quelqu'un peut-il m'aider sur la partie technique pour trouver un code qui fonctionne ?

Modifié par Hellboy
Inutile de citer le message précédent; on vient de le lire (captain_torche)
Lien vers le commentaire
Partager sur d’autres sites

le forum est là uniquement pour créer du trafic sur le site
très mauvaise solution : faire un forum ou un annuaire uniquement pour amener des visiteurs sur un site, cela a peu de chance de marcher
Lien vers le commentaire
Partager sur d’autres sites

très mauvaise solution : faire un forum ou un annuaire uniquement pour amener des visiteurs sur un site, cela a peu de chance de marcher

Sachant que mon forum est, dans son domaine particulier, le forum le plus fréquenté du monde francophone, je dirais que oui, ça marche très bien !

En fait, en étudiant la question et les réponses qui m'ont été faites, j'ai laissé tomber l'idée de traiter différemment les robots. En bref, je ne veux plus qu'une chose : que tout ce qui va sur le forum sans être passé d'abord par une page du site soit redirigé sur la home du site. Je pense que j'y suis presque, mais j'ai encore un souci. Mon fichier htaccess :

Options +FollowSymLinks
Options +Indexes
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_REFERER} !^http://www\.monsite\.fr/(.*) [NC]
RewriteRule ^ http://www.monsite.fr [R=301,L]

Tout visiteur que ne vient pas de mon domaine lorsqu'il tente d'accéder au forum est redirigé sur la home. A partir de là, il peut cliquer sur le bouton "forum", y accéder, et parcourir le forum sans problème. S'il poste un message, il arrive de façon normale sur une page qui indique que le message a été posté et propose deux liens : voir le message envoyé, ou retourner au dernier forum visité. Si on clique sur un des liens, tout va bien. Par contre, si on ne fait rien, on est normalement redirigé vers le message qu'on vient de poster. Et c'est là que ça coince : au lieu de ça, on est redirigé vers une page du site qui indique : "Désolé, aucun article ne correspond à vos critères."

Qu'est-ce qui ne marche pas dans mon code ?

Lien vers le commentaire
Partager sur d’autres sites

Oui oui j'ai bien compris que tu attendais de nous qu'on te donne un code tout fait pour ta problématique.

Ben non. Je te redis que c'est une TRÈS mauvaise idée.

Libre à toi de le comprendre, ou pas.

Personnellement, un gars qui m'oblige à visiter son site avant de voir son forum: une chose est sûre, je ne visiterai aucun des deux, je serai déjà loin.

Non mais sans blague.

Lien vers le commentaire
Partager sur d’autres sites

Sachant que mon forum est, dans son domaine particulier, le forum le plus fréquenté du monde francophone, je dirais que oui, ça marche très bien !
ça marche pour le forum, mais visiblement pas pour le site, c'est ce que je voulais dire.

Donc à toi de voir comment tu pourrais procéder autrement : infos directement dans le forum, newsletter, etc...

Lien vers le commentaire
Partager sur d’autres sites

De plus, comme les moteurs de recherche ne transmettent pas de référant, tu vas les rediriger automatiquement vers ta page d'accueil ce qui va te valoir une désindexation rapide de ton site complet ! (comprendre "de ton forum")

Donc : A EVITER A TOUT PRIX !

Lien vers le commentaire
Partager sur d’autres sites

Oui oui j'ai bien compris que tu attendais de nous qu'on te donne un code tout fait pour ta problématique.

Pas du tout, tu as mal regardé, le code est dans mes messages précédents. Il y a juste un petit bug que je ne parviens pas à rectifier, c'est tout.

De plus, comme les moteurs de recherche ne transmettent pas de référant, tu vas les rediriger automatiquement vers ta page d'accueil ce qui va te valoir une désindexation rapide de ton site complet !

Je ne vois pas pourquoi le site ne serait pas indexé. Il suffit que je paramètre le fichier robots.txt pour qu'il ne visitent pas le forum (puisque je ne veux pas que le forum soit indexé), et les robots ne seront donc jamais redirigés vers la home. Je ne crois pas qu'il y ait une faille dans mon raisonnement...

Lien vers le commentaire
Partager sur d’autres sites

Tout simplement parce que, comme tu le dis toi-même, ton forum est le "le forum le plus fréquenté du monde francophone" dans son domaine, et que tes membres semblent y trouver les informations sans passer par ton site.

Se priver du référencement d'un tel forum serait une absurdité. Obliger tes visiteurs à passer par le site avant tout action, serait suicidaire, puisque c'est ton forum qui fait ta popularité.

Ce qui se passe, c'est que ton forum, qui ne devait servir qu'à amener du monde sur ton site, a finalement pris une telle importance qu'il a complètement éclipsé le site lui-même. Le supprimer ou complexifier son accès ne servirait pas du tout tes intérêts.

Par ailleurs, pourrais-tu fournir l'url de ton site ?

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

Bon, je pense que je vais laisser tomber. Vous perdez votre temps à essayer de me convaincre de ne pas faire quelque chose que vais de toute façon faire (et qui, au passage, ne regarde que moi), et je perds mon temps a essayer d'obtenir un coup de pouce que personne n'a visiblement l'intention de me donner...

Modifié par Hellboy
Lien vers le commentaire
Partager sur d’autres sites

On essaie tout simplement de t'éviter de faire quelque-chose qui ferait tomber ton forum dans les oubliettes...

Si c'est ce que tu cherches à faire, alors on ne peut rien pour toi, mais on n'a pas envie qu'un autre membre qui ne lirait pas l'intégralité du post se dise "tiens, c'est bien ça" et se retrouve désindexé sans comprendre pourquoi.

Donc, non on ne te donnera pas la solution pour ce faire.

et qui, au passage, ne regarde que moi

Comme ça ne regarde que nous les réponses qu'on peut te faire ... tu as raison sur un point "on perd son temps !"

Lien vers le commentaire
Partager sur d’autres sites

C'est fou d'être obtus a ce point, quand on te dis qu'on ne te donnera pas la solution, c'est que l'on ne veux pas donner de mauvais conseil, or, la on est tous d'accord, c'est une très mauvaise idée ce que tu veux faire, donc pour nous te donner la solution serait te donner un très mauvais conseil, ce ne serait justement pas solidaire de te la donner.

Plusieurs professionnels du web ont tenté de te convaincre de ne pas faire ça, tu te moques royalement de leurs opinions.

Lien vers le commentaire
Partager sur d’autres sites

Il suffit que je paramètre le fichier robots.txt pour qu'il ne visitent pas le forum (puisque je ne veux pas que le forum soit indexé)
effectivement, pour ton problème c'est la meilleure solution, comme cela plus aucun visiteur du forum ne sera pas passé d'abord par le site...

en fait, il n'y aura presque plus aucun visiteur sur le forum :smartass:

Lien vers le commentaire
Partager sur d’autres sites

C'est fou d'être obtus a ce point, quand on te dis qu'on ne te donnera pas la solution, c'est que l'on ne veux pas donner de mauvais conseil, or, la on est tous d'accord, c'est une très mauvaise idée ce que tu veux faire, donc pour nous te donner la solution serait te donner un très mauvais conseil, ce ne serait justement pas solidaire de te la donner.

Plusieurs professionnels du web ont tenté de te convaincre de ne pas faire ça, tu te moques royalement de leurs opinions.

Pas du tout ! Je suis même ouvert à toute discussion sur le sujet. Mais ça me semble tout de même un peu normal que la décision ne revienne qu'à moi au final, c'est tout de même mon site !

Histoire d'être sûr qu'on s'est tous bien compris, je récapitule une dernière fois :

- Je veux que tout visiteur qui vient sur mon forum passent d'abord par une page du site.

- Je ne veux pas que les robots parcourent le forum.

- Je ne veux pas que le forum soit référencé.

Donc ça ne devrait poser problème à personne, puisque personne ne verra jamais dans Google de lien direct vers le forum, que les utilisateurs du forum sont déjà au courant que je veux faire ça (et ça n'a pas l'air de les déranger), et que ça ne devrait pas non plus poser de souci pour le référencement du site lui-même. Alors où est le problème ? Sous prétexte de me rendre service, vous me laissez patauger avec le bug de redirection intempestive qui renvoie vers la home lorsqu'on poste un message sur le forum. Et ça, pour le coup, oui, ça gêne les utilisateurs du forum, normal, donc je cherche une solution pour que ça ne se produise plus !

Lien vers le commentaire
Partager sur d’autres sites

installer livehttpheader sur FF pour vérifier les en-têtes envoyés par le serveur pour voir à quel moment le problème se pose.

Lien vers le commentaire
Partager sur d’autres sites

La décision finale te revient effectivement, mais nous, nous refusons de donner des conseils qui sont néfastes pour un site internet, on tient aussi à la qualité du forum par la qualité des conseils donnés.

On te laisse patauger comme tu dis uniquement parce que l'on estime que ce sera très néfaste pour ton site.

Et quand à nous parler des utilisateurs de ton forum qui sont gênés par tes manipulations, a qui la faute, on ne fait pas ces expériences sur un site en prod, mais sur un site en préprod, là par contre, je peux t'aider, il te suffit de duplique ton site et le forum sur ton hébergeraient et de lui affecter le sous domaine "tests" par exemple, comme cela tu pourras manipuler ton .htaccess sans gêner tes membres.

Lien vers le commentaire
Partager sur d’autres sites

- Dans l'idéal, j'aimerais aussi que ceux qui ont fait une recherche via Google et qui cliquent sur un lien direct vers un sujet du forum ne soient pas redirigés non plus vers le site, mais puissent accéder directement au sujet concerné
Il suffit que je paramètre le fichier robots.txt pour qu'il ne visitent pas le forum (puisque je ne veux pas que le forum soit indexé)

Ces deux affirmations sont contradictoires. :whistling:

Jean-Luc

Lien vers le commentaire
Partager sur d’autres sites

Je vais tenter la comparaison, en espérant qu'elle soit comprise :unsure:

Je veux me suicider. Quelqu'un aurait-il la meilleure solution ?

J'ai déjà tenté:

-la corde (elle s'est cassée sous mon poids)

- le flingue (j'ai descendu mon chien par erreur, peut-être je vise mal)

- l'écoute en boucle d'un CD de Mariah Carey (c'est mon voisin qui y est passé)

- la défenestration (habitant au rez-de-chaussée, ça n'a pas donné grand-chose)

Donc, vos avis me demandant de ne pas me suicider, je m'en moque. Je demande juste comment je dois faire. Après tout, c'est ma vie, et c'est à moi que revient la décision finale.

Sous prétexte de sauver ma vie, vous me laissez patauger ! En plus mon chien commence à sentir, ça gêne la copropriété, donc je cherche une solution pour que ça ne se reproduise plus.

Lien vers le commentaire
Partager sur d’autres sites

Je vais tout de même te donner une piste, même si le post ci-dessus m'a fait bien rire :)

Tu ne peux pas te baser sur le référant parce que certains utilisateurs (ou scripts) choisissent de ne pas le transmettre... et c'est manifestement ce qui se passe lorsque tu postes sur ton forum.

Donc soit tu modifies les sources du forum pour forcer un référant, soit tu utilises les sessions en en créant une sur le site.

Donc:

pas de session : on redirige vers le site

session active : on navigue normalement.

Ce n'est donc pas avec un simple fichier .htaccess que tu pourras résoudre ton "problème". Il te faudra éditer l'entête de ton forum pour vérifier si cette session est bien présente et éditer ton site pour la créer le cas échéant.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...