Comment prévenir efficacement les messages de spam et les commentaires indésirables sur les sites Web (babillards électroniques) ? Cet article fournit des idées de solutions détaillées et des étapes de mise en œuvre. Les amis qui ont besoin d'en savoir plus peuvent se référer à ce qui suit.
1. Sur la page de remplissage du formulaire : <input type="hidden" value="<%=Now()%>">
Sur la page de traitement de la soumission, définissez l'heure de soumission
Copiez le code comme suit :
Si DateDiff("s",request.form("intime1"), Now()) < 5 alors
réponse.write "<SCRIPT language=JavaScript>alert('La vitesse de votre message est trop rapide, il est interdit de laisser des messages !');"
réponse.write "this.location.href='vbscript:history.back()';</SCRIPT>"
réponse.end
finir si
2. Code de vérification
Copiez le code comme suit :
yz=cstr(request.Form("yz"))
yz1=cstr(session("yz1"))
si yz1<>yz alors
Response.Write("<script language=javascript>alert('Veuillez saisir le code de vérification correctement !');</script>")
réponse.redirect("sign.asp")
finir si
3. Déterminer l'origine
Copiez le code comme suit :
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
'Réponse.Write (serveur_v1)
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
'Réponse.Write (serveur_v2)
si mid(server_v1,8,len(server_v2))<>server_v2 alors
Response.Write("<script language=javascript>alert('La soumission externe de données est interdite !');</script>")
réponse.end
finir si
4. Définissez le nombre de soumissions quotidiennes
Copiez le code comme suit :
'Lorsque l'utilisateur soumet une fois
si request.cookies("postnum")="" alors
réponse.cookies("postnum")=1
réponse.cookies("postnum").expires=DateAdd("h", 24, Now())
autre
réponse.cookies("postnum")=request.cookies("postnum")+1
finir si
si request.cookies("postnum") > 3 alors
réponse.write "<SCRIPT language=JavaScript>alert('Le nombre de messages aujourd'hui a dépassé la limite, les messages sont interdits !');"
réponse.write "this.location.href='vbscript:history.back()';</SCRIPT>"
réponse.end
finir si
5. Interdire la propriété intellectuelle
Copiez le code comme suit :
server_ip=Cstr(Request.ServerVariables("REMOTE_ADDR"))
si c'est vrai (server_ip,8) = "194.165."
réponse.write "Les soumissions qui se chevauchent 194.165 sont interdites."
réponse.Fin()
finir si
1. Déterminez si les informations publiées proviennent d’une source fiable. Tant qu'il est publié par une personne physique, il doit provenir de la page de soumission que nous fournissons aux utilisateurs, et il doit y avoir une source ; s'il est publié par une machine, il n'y aura aucune information sur la source.
'Déterminer l'origine et interdire les soumissions externes
Copiez le code comme suit :
faible serveur_v1, serveur_v2
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
si server_v1="" ou instr(server_v1,"/add.asp")<=0 ou mid(server_v1,8,len(server_v2))<>server_v2 alors
réponse.write "<SCRIPT Language=JavaScript>alert('Source illégale, soumission externe interdite !');"
réponse.write "this.location.href='vbscript:history.back()';</SCRIPT>"
réponse.end
finir si
Notez que /add.asp ci-dessus est la page source de la page de soumission. Bien entendu, la machine peut également falsifier l’origine, ce qui doit être traité en combinaison avec les méthodes suivantes.
2. Code de vérification. Les codes de vérification ont toujours été une méthode viable pour traiter les messages de spam automatique. Différents codes de vérification ont des capacités différentes pour traiter les messages des machines. Plus le code de vérification est complexe, plus il est difficile à déchiffrer pour les machines. Cela nécessite de choisir un équilibre entre la prise en compte du ressenti de l'utilisateur et la gestion de la machine. Je ne dirai pas grand-chose sur la façon d'utiliser le code de vérification. La recherche sur Google et Baidu fera apparaître de nombreuses introductions.
3. Déterminez l’heure de soumission de la source. Si le temps passé sur la page de soumission est trop court, par exemple 20 secondes, généralement tant qu'il s'agit d'un particulier, son temps de frappe n'a pas besoin d'être aussi court. Par exemple, lorsque l'utilisateur ouvre la page (comme add.asp), nous enregistrons l'heure et ajoutons un objet caché au formulaire de soumission du formulaire, tel que :
<input type="hidden" value="<%=Now()%>">
Ensuite, lorsque l'utilisateur écrit un message et le soumet à la page de traitement spécifique (telle que addok.asp), nous obtenons l'heure actuelle et la comparons avec l'heure intime1 dans add.asp si le décalage horaire est inférieur à l'heure définie. temps, par exemple 20 secondes, les messages sont interdits et il est déterminé qu'il s'agit d'une machine. Le code peut s'écrire ainsi :
Copiez le code comme suit :
Si DateDiff("s",request.form("intime1"), Now()) < 20 alors
réponse.write "<SCRIPT language=JavaScript>alert('La vitesse de votre message est trop rapide, il est interdit de laisser des messages !');"
réponse.write "this.location.href='vbscript:history.back()';</SCRIPT>"
réponse.end
finir si
Grâce aux trois méthodes ci-dessus, la plupart des commentaires indésirables des robots peuvent être bloqués. S'il y a encore un grand nombre de commentaires, ils sont probablement laissés par de la chair humaine. Mais comment traiter les messages humains ? flymorn fournit également des méthodes pour y faire face.
La méthode est très simple, elle consiste à limiter le nombre de commentaires postés par un même utilisateur en enregistrant les cookies et l'IP de l'utilisateur. Par exemple, dans un délai de 24 heures par jour, un même utilisateur n'est autorisé à publier que 5 messages. Nous pouvons y parvenir grâce aux méthodes suivantes.
Copiez le code comme suit :
<%'Lorsque l'utilisateur soumet une fois
si request.cookies("postnum")="" alors
réponse.cookies("postnum")=1
réponse.cookies("postnum").expires=DateAdd("h", 24, Now())
autre
réponse.cookies("postnum")=request.cookies("postnum")+1
finir si
si request.cookies("postnum") > 5 alors
réponse.write "<SCRIPT language=JavaScript>alert('Le nombre de messages aujourd'hui a dépassé la limite, les messages sont interdits !');"
réponse.write "this.location.href='vbscript:history.back()';</SCRIPT>"
réponse.end
finir si
%>
Grâce aux restrictions ci-dessus, la publication manuelle a également été limitée dans une certaine mesure. La méthode ci-dessus est basée sur le jugement des cookies. Bien sûr, les utilisateurs peuvent effacer les COOKIES via le navigateur, mais cela rend plus difficile la publication de messages de spam et augmente le seuil. Nous pouvons également continuer à déterminer l'IP de l'éditeur et atteindre notre objectif en limitant le nombre de publications sous la même IP. Il n'y aura pas d'extension supplémentaire ici. Vous pouvez concevoir votre propre méthode pour déterminer l'adresse IP afin de limiter la publication. Si vous avez des avis ou des suggestions sur les sujets abordés dans cet article, n'hésitez pas à laisser un commentaire afin que nous puissions en discuter ensemble.