passage de parametres par l'adresse

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : passage de parametres par l'adresse

par NiCreteNiSoumise » 20 févr. 2007, 23:47

- Pour les cookies la plupart des utilisateurs les ont d'activés.
- Pour ce qui est de googlebot ce n'estqu'un exemple, comme l'a expliqué AB tu peux compléter ta liste, il n'y a rien d'exhaustif

par AB » 20 févr. 2007, 20:06

Pour préciser un peu la réponse de NiCreteNiSoumise

Sa première méthode est plus efficace que la seconde mais tous les hébergeurs (dont beaucoup de gratuits) ne prendront pas en compte les paramétrages de la première.

D'autre part, la première solution oblige les visiteurs à accepter les cookies pour lancer une session. Cela peut restreindre le nombre de tes visiteurs. Perso, je n'utilise cette solution que pour les pages "administrateur" avec détection des cookies puis avertissement à l'utilisateur s'ils sont désactivés...

La seconde solution proposée par NiCreteNiSoumise me semble donc plus adaptées à la majorité des cas même si elle est moins efficace car tous les robots n'indiquent pas 'googlebot' dans $_SERVER["HTTP_USER_AGENT"]
Mais tu pourrais aussi augmenter ta liste de détection http://www.banbots.com/google.htm

par NiCreteNiSoumise » 20 févr. 2007, 14:37

ini_set("session.use_trans_sid","0");
ini_set("url_rewriter.tags","");
avant ton session_start();

- On interdit aux sessions de passer par l'url
- On interdit l'insertion automatique dans les liens/formulaires

A défaut on peut imaginer que tu détectes les robots afin de ne pas lancer le session_start(); s'il s'agit de l'un deux.
if (!eregi("googlebot", $_SERVER["HTTP_USER_AGENT"]))
{
     session_start();
}
Plus d'infos ici :

http://www.webmaster-hub.com/index.php? ... entry94570

passage de parametres par l'adresse

par tp » 20 févr. 2007, 12:58

Bonjour,

J'ai une application pour voir les statistiques que mon site, elle utilise les variables de session, je constate que lorsqu'on clique sur un premier lien l'adresse est ralongée par, par exemple : ?PHPSESSID=d8bc7cd2810655ae950954877048eeb5, or les moteurs comme Google prennent cette adresse qui n'en est pas une même si elle marche.
Est-ce que vous avez une solution pour remédier à cela? et ne plus voir PHPSESSID dans l'adresse.

Merci d'avance
tp