Die folgende Liste ist nach der relativen Einfachheit der Implementierung, den Wartungskosten und der Wirksamkeit der Spam-Prävention gegliedert:
Deaktivieren Sie alle benutzergenerierten Inhalte
Dies ist eine Scorched-Earth-Lösung, die das Wachstum einer Benutzergemeinschaft auf Ihrer Website beeinträchtigt. Sie erspart Ihnen jedoch auch die Zeit und Mühe, sich mit Spam oder Spam-Prävention zu befassen.
Abgesehen von der Deaktivierung von benutzergenerierten Inhalten gibt es keine garantierte Lösung, um das Auftreten von Spam (oder anderen unerwünschten Inhalten) zu verhindern. Eine Lösung, die die meisten Spammer abschreckt, sollte jedoch ausreichen, wenn Sie den Besuchern Ihrer Website auch die Möglichkeit geben, Inhalte zu kennzeichnen als Spam.
Benutzergeneriertes Content Management auslagern
Dienste wie Disqus ermöglichen es Webmastern, die Überprüfung, Speicherung und Veröffentlichung von benutzergenerierten Kommentaren auszulagern. (Hinweis: Die Verwendung eines Drittanbieter-Dienstes erfordert eine zusätzliche Konfiguration, um sicherzustellen, dass Kommentare von Suchmaschinen indiziert werden.)
CAPTCHA
Laut Wikipedia steht CAPTCHA für "Completely Automated Public Turing Test, um Computer und Menschen auseinander zu halten". Jeder automatisierte Test, der verhindern soll, dass ein Computer Inhalte veröffentlicht, ist ein CAPTCHA: Dazu gehört, dass Benutzer Buchstaben, Zahlen und Wörter aus Bildern lesen, einfache Worträtsel oder mathematische Fragen lösen oder auf andere Weise "beweisen", dass sie Personen sind.
Der Nachteil von CAPTCHA ist das
Die meisten Formen von CAPTCHAs stören die Benutzer.
Sie sind nicht 100% schützend. Beachten Sie, dass viele dieser Tests von Computern durchgeführt werden können, wenn ein kompetenter Programmierer beschließt, genügend Zeit und Mühe in das Problem zu investieren
Q & A CAPTCHA
Das effektivste CAPTCHA für kleine Websites ist das Frage- und Antwort-CAPTCHA. Ein Q & A CAPTCHA ist eine Frage, die ein Benutzer auf einer Website beantworten muss. Die Frage ist etwas, das jeder, der die Site besucht, wissen würde, aber dass ein Computerprogramm es nicht wissen würde. Eine Beispielfrage für eine Site über SEO wäre "Wofür steht SEO?". Diese Frage wäre für den durchschnittlichen Leser dieser Site leicht zu beantworten, aber jedes Computerprogramm wäre dazu nicht in der Lage.
HINWEIS: Fragen wie "Was ist 1 + 1?" Funktionieren nicht gut, da sie häufig verwendet werden und die Leute, die Spambots erstellen, sie so programmieren, dass sie solche Fragen richtig beantworten.
Wenn Ihre Site jedoch viel Verkehr hat, programmieren Spammer ihre Roboter so, dass sie diese Fragen automatisch beantworten, und das Q & A-CAPTCHA ist nicht mehr wirksam.
Verstecktes Feld
Wenn Sie ein Formular haben und nicht möchten, dass Spammer es verwenden können, können Sie es am besten mithilfe eines ausgeblendeten Felds stoppen. Diese sind sehr einfach einzurichten: Fügen Sie Ihrem Formular ein redundantes Feld hinzu, verstecken Sie es durch CSS (oder JavaScript) und stoppen Sie alle Versuche, einen Wert in dieses Feld einzugeben. Normale Benutzer können das Feld nicht sehen und ignorieren es, da es vor ihnen verborgen ist. Von Spammern verwendete Computerprogramme versuchen jedoch, einen Wert in dieses Feld einzugeben, da sie kein CSS oder Javascript verarbeiten. Um Spambots zu schlagen, die CSS oder Javascript laden, können Sie den Formularen ein zusätzliches Feld hinzufügen, in dem Sie aufgefordert werden, es leer zu lassen. Jeder menschliche Besucher lässt es leer und Sie können die Bots, die Daten zum Feld hinzufügen, einfach blockieren. Vergessen Sie nicht, dass die Website dadurch möglicherweise unprofessionell aussieht.
Traffic- und Content-Analyse
Spammer haben eine begrenzte Anzahl von Netzwerken und Computern, über die sie Beiträge senden können (die sie normalerweise verwenden, bis sie nicht mehr funktionieren). Datenverkehrsanalyselösungen erfassen Daten von einer großen Anzahl von Hosts, um festzustellen, ob ein Beitrag bekannten Spam-Inhalt enthält oder von einem Host oder Netzwerk eines bekannten Spammers stammt.
Es gibt eine Vielzahl von CAPTCHA- und Verkehrsanalyselösungen von Drittanbietern, die kostenlos (oder kostengünstig) verwendet werden können. Die meisten Open-Source-Content-Management-Programme enthalten integrierte Module für die Nutzung von Diensten wie Akismet und reCAPTCHA .
Blockieren Sie häufig in Spam enthaltene Wörter
Wenn Sie bemerken, dass Spam auf Ihrer Website häufig Wörter enthält, die von legitimen Benutzern nicht verwendet werden (oder nicht) (z. B. "kostenlose Links zu Ihrer Website"), ist es eine affektive Lösung, Benutzer daran zu hindern, diese Wörter zu veröffentlichen. Wenn Sie Bedenken haben, dass Benutzer, die diese Wörter in ihren Posts legitim verwenden, Probleme beim Posten auf Ihrer Site haben, können Sie den Filter so einstellen, dass er Posts von etablierten Benutzern ignoriert.
rel="nofollow"
Spammer konzentrieren sich in der Regel auf Websites, auf denen sie Links veröffentlichen können, denen Suchmaschinen folgen (wodurch der Suchrang der von ihnen beworbenen Website verbessert wird).
Sie können Ihre Website für Spammer weniger attraktiv machen, indem Sie rel="nofollow"
Links zu von Nutzern erstellten Inhalten hinzufügen. Dieser Ansatz funktioniert jedoch möglicherweise nicht, da die meisten Spam-Mails automatisiert sind und Spammer nicht wissen können, ob eine Website rel="nofollow"
Links verwendet oder nicht .
Moderation durch Benutzer
Inhalte können jedoch von jedermann gepostet werden. Sobald sie auf der Website angezeigt werden, können sie auch als Spam gekennzeichnet und entfernt werden Die meisten Besucher werden sich nicht darum kümmern, Spam zu melden.
Gamification
Gamification ist eine großartige Möglichkeit, Benutzer dazu zu motivieren, Spam zu melden. Erwägen Sie, Ihrer Website eine "Flaggengewichtung" hinzuzufügen: Je mehr Spam-Nutzer melden, desto mehr Punkte erhalten sie. Auf diese Weise macht das Aufspüren von Spam mehr Spaß und es werden Personen, die Spam melden, Rechte eingeräumt. Dies wiederum ermutigt die Benutzer, Spam zu melden.
Moderation durch Administratoren
Ein Mensch muss alle veröffentlichten Inhalte überprüfen, bevor sie auf der Website veröffentlicht werden. Dies verhindert zwar nicht, dass Spam veröffentlicht wird, verhindert jedoch, dass Spam für die Besucher der Website angezeigt wird (was den Wert der Website für menschliche Spammer verringert). .
Benutzer Registration
Die Benutzerregistrierung stellt eine Verbesserung gegenüber CAPTCHA dar, da Benutzer nur einmal nachweisen müssen, dass sie ein Mensch sind , bevor sie nach Belieben Kommentare abgeben können. Dies ist technisch gesehen keine andere Form der Spam-Verhinderung Bestimmte Benutzer oder Benutzergruppen (wie durch Benutzername, E-Mail-Adresse, IP-Adresse oder anderen Identifizierungsfaktor angegeben) sind leichter durchzusetzen.
Moderate neue Benutzer
Anstatt jeden Beitrag zu genehmigen, kann ein Administrator die Registrierungen neuer Benutzer überprüfen, um zu bestimmen, ob ein Benutzer genehmigt werden soll oder nicht, basierend darauf, ob die Registrierung des Benutzers mit identifizierten Spammern oder automatisierten Spambots übereinstimmt.
Beschränken Sie die Möglichkeiten neuer Benutzer
Menschliche Spammer werden sich selten daran erinnern, zu Konten zurückzukehren, die sie erstellt haben, wenn sie keinen freien Spam auf einem Konto veröffentlichen können. Neue Benutzer müssen eine bestimmte Anzahl von Posts erstellen (wenn die Community die Möglichkeit hat, Spam zu kennzeichnen) und / oder eine bestimmte Zeit warten Zeitspanne, bevor Einschränkungen für das Posten von Links oder mehreren Posts aufgehoben werden.
Laden Sie Benutzer für Mitgliedschaft auf
Wenn Sie für die Mitgliedschaft eine Gebühr erheben, müssen Spammer die Kosten für die Mitgliedschaft mit dem Wert für das Versenden von Spam auf Ihrer Site abwägen (und zugunsten einfacherer Ziele auf Ihre Site übergehen).
Nur geladene Gäste
Wenn Sie nur Personen zulassen, die von anderen Benutzern eingeladen wurden, sich zu registrieren, wird dies den Spam erheblich reduzieren (Menschen laden normalerweise keine Roboter ein).
Das Folgende ist von Project BOTCHA , Drupal.
Honigtopf
Implementierung einer Honeypot-Falle . Das Wesentliche ist, dass das Feld mit einem bestimmten Wert zum Formular hinzugefügt wird, der dann von JS geändert wird. Spam ist jede Form der Übermittlung, deren berechneter Wert nicht dem von uns benötigten Wert entspricht.
HoneyPot2
Dasselbe wie oben, aber als Berechnungsquelle nicht den Wert eines bestimmten Feldes verwenden, sondern die Daten aus CSS.
ObscureUrl
Ähnlich wie bei HoneyPot2: Konstruiert von JS wird mit dem Bedarf verglichen. Der Unterschied besteht darin, dass der Anfangswert über den GET-Parameter übergeben wird.
Fazit
Die meisten Webmaster werden feststellen, dass eine Mischung der oben aufgeführten Lösungen (mit Ausnahme des Nichtzulassens von benutzergenerierten Inhalten) am besten für ihre Website geeignet ist und mindestens eine Lösung implementiert werden muss , um zu verhindern, dass automatisierter Spam die Diskussionen der Besucher unterdrückt.