Anti-Flood Mod für Suche und Statistik

Neue Projekte und Anfragen, Teamarbeiten und Alpha/Beta Scripte jeder Art.
KEINE Supportanfragen zu bestehenden MODs!
Antworten
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Anti-Flood Mod für Suche und Statistik

Beitrag von jungpionier »

Hi

hab mal ne frage

wie ich am eigenen Leib erfahren musste :mad: kann ein einzelner User durch permanente Aufrufe mittels script ein Forum bezw. die Datenbank lahmlegen, was kann man dagegen tun? gibts da einen Hack dagegen? oder kann man selber was dagegen tun? ausser die Suche und statistik abzuschalten!

mfg Jungpionier
Zuletzt geändert von jungpionier am Fr 08.Apr, 2005 10:25, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Bei der Statistik (wenn Du den Statistik Mod meinst), kannst Du das Abrufintervall erhöhen. Werte wie 1440 bedeuten dabei täglich.
Die Suche lässt sich auch optimieren. Es gibt in der search.php einen Begrenzer, der die Anzahl der Suchergebnisse eingrenzt:

Code: Alles auswählen

	// Search ID Limiter, decrease this value if you experience further timeout problems with searching forums
	$limiter = 5000;
Diese Zahl kann man entsprechend verringern.
Ansonsten hatte ich mal einen Flood-Mod für die Suche gesehen, aber wo...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
jungpionier
Beiträge: 91
Registriert: So 30.Jan, 2005 13:35
Wohnort: Dresden

Beitrag von jungpionier »

Hi Oxpus

gelöst hab ich es mittlerweile so

Search.php

suche:

Code: Alles auswählen

if ( isset($HTTP_POST_VARS['search_keywords']) || isset($HTTP_GET_VARS['search_keywords']) )
{
	$search_keywords = ( isset($HTTP_POST_VARS['search_keywords']) ) ? $HTTP_POST_VARS['search_keywords'] : $HTTP_GET_VARS['search_keywords'];
}
else
{
	$search_keywords = '';
}
und ersetze es damit:

Code: Alles auswählen

if ( isset($HTTP_POST_VARS['search_keywords']) || isset($HTTP_GET_VARS['search_keywords']) )
{
	$search_keywords = ( isset($HTTP_POST_VARS['search_keywords']) ) ? $HTTP_POST_VARS['search_keywords'] : $HTTP_GET_VARS['search_keywords'];
	if ((substr_count($search_keywords, "*") != 0) || (strlen($search_keywords) < 3) )
	{
	 	$search_keywords='';
	}
}
else
{
	$search_keywords = '';
}


Das Problem gibts eigentlich in jedem phpBB Forum

Wir habens so gelöst dass man wildcard-Suchen vollkommen deaktiviert, es braucht sie eigentlich niemand. (Wildcard ist das "*")

Desweiteren haben wir das Suchen verboten, wenn weniger als 3 Zeichen eingegeben werden, denn wenn jemand einfach nach "a" sucht ist das ja auch fast dasselbe wie eine Wildcard-Suche.

Auch sollte die Suche wenn möglich nur für eingeloggte User benutzbar sein ist aber kein muss sondern nur ein zusatz. :)

mfg Jungpionier

(thx an Freeza007)
Antworten