Hi zusammen...
ich habe ein etwas ungewöhlicheres Anliegen.
Und zwar möchte ich bestimmte User, die von einer bestimmten Website über einen Link bei mir landen
auf eine spezielle Hinweisseite leiten. Hab' mir auch schon ein PHP Script entwickelt, um den Referer
abzufragen usw. (IP's würden nicht gehen). Die Hinweisseite sollte nur einmalig erscheinen. D.h.
auf der Hinweisseite ist ein Link auf die normale Startseite meiner Website. Klickt der User darauf,
sollte er ganz normal meine Website nutzen können.
Hat einer eine Idee, wie ich's am effektivsten ins CMS eingebaut bekomme? Kann ich weitere Params
an die index.php weitergeben, ohne die Funktionalität des CMS zu stören? Oder weiss jemand einen
bessere Umsetzungsmöglichkeit?
Hintergrund des Ganzen ist nicht (!), dass ich Personen aussperren möchte, sondern eher darauf hinweisen
möchte, dass mein Angebot frei zugänglich ist sowie auch bleiben soll und wird. Steht dann auf der Hinweis-
seite (Es gibt gewisse Firmen, die die Links und Web-Adressen "vermarkten")
Danke & Gruß
Einrichten einer Blacklist
Re: Einrichten einer Blacklist
Müsstest du theoretisch nicht, da Smarty ihn bereits kenntmaninweb wrote: Hab' mir auch schon ein PHP Script entwickelt, um den Referer abzufragen
Code: Select all
{$smarty.server.HTTP_REFERER}
Code: Select all
$smarty->assign('referer', $referer);
Code: Select all
{referercheck}
{if $referer == '1'}
{redirect_page page='seiten-alias'}
{else}
... dein Template ...
{/if}
Re: Einrichten einer Blacklist
Hi cyberman...
Danke für die Tipps, ich werd's mal ausprobieren. Finde ich sogar gut, dass dann die Hinweisseite im CMS liegen kann. Momentan war sie noch extern.
Gruß & schönen Sonntag.
Danke für die Tipps, ich werd's mal ausprobieren. Finde ich sogar gut, dass dann die Hinweisseite im CMS liegen kann. Momentan war sie noch extern.
Gruß & schönen Sonntag.
Re: Einrichten einer Blacklist
Hi nochmal...
ich hab's jetzt eingebaut, jedoch aufbauend auf Deinen Vorschlag ein bißchen anders gelöst.
Und zwar habe ich ein benutzerdefiniertes Tag "Referer" erstellt und beispielhaft diesen Code eingebaut...
Danach in das Template direkt ganz oben folgendes eingebaut...
Damit wird dann auch ausgeschlossen, dass der User in einer Schleife läuft. Die Addressen kann man dann
aus einer Textdatei oder so einlesen, das ist aber kein Problem.
Grüße
ich hab's jetzt eingebaut, jedoch aufbauend auf Deinen Vorschlag ein bißchen anders gelöst.
Und zwar habe ich ein benutzerdefiniertes Tag "Referer" erstellt und beispielhaft diesen Code eingebaut...
Code: Select all
// Vars...
$Block = 0;
$Keys = array();
// Addresses...
$Keys[0] = "adresse1";
$Keys[1] = "adresse2";
$Keys[2] = "adresse3";
$Keys[3] = "adresse4";
// Get...
$Referer = strtolower($_SERVER['HTTP_REFERER']);
$Address = strtolower(gethostbyaddr($_SERVER['REMOTE_ADDR']));
// Check...
if (strpos($Referer, strtolower("maninweb")) < 1)
{
foreach ($Keys as $Value)
{
if (strpos($Referer, strtolower($Value)) !== false ||
strpos($Address, strtolower($Value)) !== false)
{
$Block = 1; break;
}
}
}
// Assign
$smarty->assign('Block', $Block);
Code: Select all
{Referer}
{if $page_alias != "die_hinweis_seite"}{if $Block == '1'}{redirect_page page='die_hinweis_seite'}{/if}{/if}
aus einer Textdatei oder so einlesen, das ist aber kein Problem.
Grüße