Unten die Original-Anweisungen von Stefan.
Folgendes möchte ich noch hinzufügen:
Wenn Ihr die Original-System-Datei von NOF, so wie unten von Stefan erklärt, überschreibt, dann möchte ich Euch empfehlen (für alle Fälle) vorher von dieser Datei eine Sicherheits-Kopie zu erstellen, sodass diese nicht verloren geht oder diese Original-Datei umzubenennen im Ordner:
C:\Programme\NetObjects\NetObjects Fusion 9.0 [oder 10.0 oder 11.0 oder 12.0 oder 2013]\Components\NetObjects\NOF Guestbook 2.0\scripts\php
also von:
gb_add_post.php > in z.B.: > gb_add_post-ORIGINAL.php
... dann könnt Ihr diese getrost mit der neuen Datei von Stefan:
gb_add_post.php
in dem oben genannten System-Ordner von NetObjects überschreiben. Dies hat den großen Vorteil, dass bei jeder erneuten Publizierung des Gästebuchs auch diese (modifizierte) Datei wieder mit hochgeladen wird.
In jedem Fall müsst Ihr dann noch die beiden .txt Dateien direkt auf Euren Server mittels FTP-Programm in Euren Ordner scripts kopieren, also die Dateien:
phrase-list.txt url-domain-bl.txt
Alternativ könntet Ihr natürlich die von Stefan bearbeitete Datei
gb_add_post.php
eben auch direkt auf Euren Server in den Ordner
scripts
kopieren, sowie die beiden .txt Dateien und Ihr braucht dann die Gästebuch-Seite nicht erneut zu publizieren. Diese würde allerdings bei einer erneuten Publizierung Eures Gästebuchs dann von NOF wieder überschrieben werden. Hebt Euch also diese (neue) gb_add_post.php in diesem Fall gut auf, damit Ihr diese bei Bedarf erneut auf den Server kopieren könnt.
Stefan hat zusätzlich in diesem Skript eine Weiterleitung zu einer Erfolgs-Seite und einer Verbannt-Seite vorgesehen. Dies finde ich eine besonders schöne Lösung, da man nun auch endlich, durch die Weiterleitung mitbekommt, dass der Eintrag vorgenommen wurde und nicht nur auf die leere Gästebuchseite zurückkehrt.
Diese Weiterleitung ist optional. Wenn Ihr das wollt, müsst Ihr Euch allerdings diese beiden Seiten auch in Eurem Projekt anlegen und diese beiden Seiten müssen auch genau so benannt werden, da diese beiden Seiten mit diesem Namen im Skript angesprochen werden. Also:
Die Erfolgs-Seite muss heißen: gb_ok Die Verbannt-Seite muss heißen: gb_banned
Die Weiterleitung auf diese Seiten erfolgt dann nach Prüfung in dem Skript:
gb_add_post.php
in dem mittels Abarbeitung der beiden .txt Dateien festgestellt wird, ob es sich um einen Spam-Eintrag handelt oder nicht. Es werden das Homepage- und das Kommentarfeld überprüft.
... und so sieht es dann aus. Ihr dürft das gerne an meinem Gästebuch testen, wenn Ihr nicht wollt, dass Euer Test-Eintrag veröffentlicht wird, dann schreibt einfach hin:
“Bitte nicht veröffentlichen”
Bemerkung: Bitte wundert Euch nicht, dass auf meiner Seite zusätzlich noch der Text aus dem Kommentar-Feld des Gästebuchs angezeigt wird und ausgedruckt werden kann. Dies habe ich noch zusätzlich zu Stefan’s Skript hinzugefügt.
Von Stefan Menge am 13.02.2009
nach oben
Hallo an alle geplagten NOF 9, NOF 10, NOF 11 und NOF12 “Gästebuch 2.0” - Benutzer
Als spam-geplageter NOF-Gästebuchbenutzer habe ich mir einige Ãœberlegungen gemacht, wie dem Problem “Spam” beizukommen ist.
Mein Gästebuch ist jetzt auch ohne Captcha spamfrei!
Ich habe die Komponente NOF-Gästebuch 2.0 dahingehend auf Stufe PHP erweitert, dass Absender-Mailadressen und auch der Meldungs-Inhalt auf spam-relevante Adressen und Texte untersucht wird. Dabei wird eine Scorepunktzahl vergeben. Übersteigt diese Zahl einen bestimmten Wert, wird die Nachricht automatisch verworfen.
Ebenso ist es unmöglich, dass Links in das Gästebuch eingetragen werden können. Somit sind Spam-Bots, auch wenn die immer wieder probieren, nicht erfolgreich.
Die Listen für “verseuchte” Adressen ‘url-domain-bl.txt’ und spam-relevante Inhalte ‘phrase-list.txt’ - welche übrigens die gleichen sind, wie sie in modernen Mail-Programmen verwendet werden - liegen auf dem Server im Ordner ./scripts und werden in das PHP-Programm ‘gb_add_post.php’ eingelesen, welches die Meldung in die Datenbank schreibt und die Mails verschickt. Die Erweiterung in diesem Programm kontrolliert eben, wie beschrieben, die ganze Meldung und wertet aus.
Damit auch andere von dieser Technik profitieren können und sich nicht weiter mit dem Spam-Problem beschäftigen müssen, habe ich die 3 notwendigen Dateien in eine ZIP zusammengefasst, die hier im Anhang liegt und heruntergeladen werden kann.
Die Installation ist ganz einfach:
Die Datei gb_add_post.php in folgenden Ordner kopieren:
C:\Programme\NetObjects\NetObjects Fusion 9.0 [oder 10.0 oder 11.0 oder 12.0]\ Components\NetObjects\NOF Guestbook 2.0\scripts\php
Die Dateien url-domain-bl.txt und phrase-list.txt mit einem FTP-Programm auf den Server in den Ordner ./scripts kopieren (dort liegen alle php-Scripte des Gästebuchs).
Danach die Gästebuchseite neu auf den Server publizieren (Achtung: Der Haken “nur veränderte Assets” darf NICHT gesetzt sein), damit die Datei gb_add_post.php neu hochgeladen wird.
Als “Bestätigungsseite” ist die Datei 'gb_ok.html' vorgesehen. Diese kann mit NOF erstellt werden und liegt im Ordner './html', so wie alle anderen Seiten auch.
Als “Verbannungsseite” ist die Datei 'gb_banned.html' vorgesehen. Diese kann mit NOF erstellt werden und liegt ebenfalls im Ordner './html', so wie alle anderen Seiten auch.
...that's all!
Beide .txt-Dateien können mit einem Editor mit weiteren unerwünschten Adressen und Inhalten erweitert werden!
So, ich hoffe, dass dies einigen von Euch hilft, wieder “ruhiger” zu schlafen - nämlich ohne “Mist” im Gästebuch!
Gruss aus der Schweiz
Stefan
Viel Erfolg!
|