PHP-Entwicklung
Posts 1-10 of 13
- Back
- Next
-
Andreas Meißner Premium MemberThe company name is only visible to registered members.Bestimmte DNS Auflösungen ausschliessen
Hallo liebe Fangemeinde,
stehe da gerade vor einem Problem, bei dem ich nicht weiter komme.
Vielleicht ist es auch nur nen Denkfehler.
Ich habe mir eine kurze Besucherübersicht gebastelt, in der ich mal schnell schauen kann,wer auf meiner Seite war, von wo er kam und wie er sich durch die Seite bewegt hat auch in zeitlichen abständen, um zu sehen, wie lang er sich wo aufgehalten hat. Des weiteren kann ich von diesem Script dann direkt einzelne Einträge löschen, den Rest in eine andere Tabelle verschieben und die Tabelle mt aktuellen Eintragen komplett bereinigen.
Das Problem ist jetzt, das natürlich auch meine eigenen Besuche angezeigt werden und jedr Klick in die Datenbank eingetragen wird. Somit wollte ich meine DNS mit einem einfachen if ausschliessen.
Code
$ip=getenv('REMOTE_ADDR');
$host=gethostbyaddr($ip);
$browser=$_SERVER['HTTP_USER_AGENT'];
$referenz=$_SERVER['HTTP_REFERER'];
$webseite='Index-Home';
datenbankconnect
if($host!='*pools.arcor-ip.net')
{
MYSQL_QUERY( "insert into die tabelle(client,host,browser,datum,zeit,referenz,webseite)
values('$ip','$host','$browser',now(),now(),'$referenz','$webseite')");
MYSQL_CLOSE();
}
Das ist die original Adresse"dslb-092-077-213-113.pools.arcor-ip.net". der erste Teil gibt die Verbindung und eine gewandelte IP an.
Das heisst, das ich alle arcor Besucher ausschliessen will, da ich nur den Weg der Suchmaschinen verfolgen möchte. der Stern vor der DNS tut es nicht, ohne Stern gehts auch nicht, ich bin für jeden Tipp dankbar.
Danke Euch im voraus
- 12 Jun 2009, 11:16 pm
-
Ulrich AhrendtThe company name is only visible to registered members.Re: Bestimmte DNS Auflösungen ausschliessen
if(stripos($host, 'pools.arcor-ip.net') === false)
{
...
}
- 13 Jun 2009, 02:08 am
-
- 13 Jun 2009, 11:29 am
-
Stefan Pausch(not a XING member)Re^3: Bestimmte DNS Auflösungen ausschliessen
Damit schließt man nur leider alle Besucher via Arcor aus. Ich würde eine Seite basteln (die man nur selber erreichen kann) die einen Cookie / Session setzt. Ist dieser Cookie / Session gesetzt schließt das Script einen automatisch aus.
- 13 Jun 2009, 1:09 pm
-
Andreas Scherbaum Group moderatorThe company name is only visible to registered members.Re^4: Bestimmte DNS Auflösungen ausschliessen
Stefan Pausch schrieb:
Ich würde eine Seite basteln (die man nur selber erreichen kann) die
einen Cookie / Session setzt. Ist dieser Cookie / Session gesetzt
schließt das Script einen automatisch aus.
Ja, das ist eine gute Idee, dann funktioniert das Skript auch nach einem
Provider- oder IP-Wechsel.
Außerdem erspart man sich das Auflösen der IP-Adresse zu einem
Hostnamen. Per Default ist diese Einstellung in Webservern deaktiviert,
weil das einen Performanceverlust bedeutet. Wenn der DNS zu der
IP-Adresse nicht erreichbar ist, muss der Besucher unter Umständen
sehr lange Zeit warten, bis das PHP-Skript fortgesetzt wird.
Zumindest für Apache findet sich die Option hier, zusammen mit einigen
Erklärungen:
http://httpd.apache.org/docs/2.2/mod/core.html#hostnamelooku...
Bei anderen Webservern ist das Verhalten gleich, nur die Optionen
unterscheiden sich.
- 13 Jun 2009, 1:20 pm
-
Marco Ziesing Premium Member Group moderatorThe company name is only visible to registered members.Re^5: Bestimmte DNS Auflösungen ausschliessen
Kennt ihr Piwik?
http://piwik.org/
;-)
Viele Grüße
Marco
- 13 Jun 2009, 2:02 pm
-
Andreas Scherbaum Group moderatorThe company name is only visible to registered members.Re^6: Bestimmte DNS Auflösungen ausschliessen
Marco Ziesing schrieb:
Kennt ihr Piwik?
Was soll dieser sinnfreie Beitrag in dieser Diskussion?
- 13 Jun 2009, 2:24 pm
-
Post visible to registered members
-
Philipp von der BornThe company name is only visible to registered members.Re^8: Bestimmte DNS Auflösungen ausschliessen
Eine weitere Möglichkeit wäre es auch sich im Browser einen individuellen User Agent anzulegen.
- 14 Jun 2009, 12:17 pm
-
Ferdinand KestennusThe company name is only visible to registered members.Re: Bestimmte DNS Auflösungen ausschliessen
Hallo Herr Meißner,
so wie ich es verstehe, sollen Ihre eigenen Einträge nicht protokolliert werden.
Die einfachste Lösung hierfür wäre, eine eigene Information, z.B: "ich" mitzusenden, und den INSERT zu überspringen.
Dies kann wie hier schon mehrfach betont, mittels eines Cookies am einfachsten geschehen. Sie benötigen hierfür lediglich einen Einzeiler in PHP, welcher separat vorher aufgerufen wird, um dieses Cookie zu setzen.
Mit freundlichem Gruß
Ferdinand Kestennus
- 14 Jun 2009, 3:22 pm
- Back
- Next
