Hallo XP-Styler (Mannonmann, waren deine Eltern aber kreativ...),
Ich möchte in einem Logfile alle Daten meiner Benutzer speichern um nachher daraus (anonyme) Statistiken zu machen.
Ich weiß ja nicht, was du mit alle Daten meinst, aber ich denke, dass sollte jeder vernünftige Webserver können.
Um z.b. die User-Agents auszuwerten reicht beim Apache ein
LogFormat "%{User-agent}i" agent
CustomLog /var/log/deinelogs/agent.log agent
Vorrausgesetzt, du hast deinen eigenen Server oder zumindest einen Virtual Host.
Ich weiss zwar, wie man IP ausliesst aber wenn ich z.B. Browser auslese, kommt immer sowas wie: MoZilla (Compatible Opera, MSIE 6)
Was soll denn das ?
Das ist, wie Cheatah schon sagte, die frei definierbare Produkt-Kennzeichnung des verwendeten Clients. Einige Beispiele, wie so was aussehen kann: http://webalizer.teamone.de/selfhtml/agent_200403.htm.
Was kann ich darsus lesen?
Direkt nichts. Du kannst höchstens die Kennzeichnungen der bekanntesten Clients sammeln und darauf hoffen, dass deine Anwender ihre User-Agent-Kennungen nicht manipulieren.
Host
Ergibt sich aus der Ip-Adresse. Wenn HostnameLookups sinnvollerweise auf Off gesetzt ist, musst du, wie dir schon gesagt wurde, gethostbyname() verwenden.
Betriebssystem
Einige User-Agents geben in ihren Kennzeichnungen Aufschluss darüber. Da dises jedoch nicht Normiert sind, kannst du dich nur die bekanntesten beruücksichtigen.
Herkunft
Was meinst du mit Herkunft? Die von einigen Browser mitgesandte Information über die Sprachversion, die bevorzugte Sprache des Anwenders ($_SERVER['HTTP_ACCEPT_LANGUAGE']) oder gar das Land dem die entsprechende IP zugeteilt ist?
ISP (Z.B. AOL)
Ist in den meisten Fällen identisch mit dem Eigentümer der Ip-Adresse. Eine Whois-Abrage sollte dieses Problem lösen.
Browser
Sofern diese nicht manipuliert wurde, erkennbar an der mitgesandten Kennung.
Hoffe dir geholfen zu haben,
Johannes
Der folgende Satz ist wahr. | http://www.zeller-johannes.de/
Der vorhergehende Satz ist gelogen. |
ss:| zu:} ls:[ fo:} de:] va:} ch:) sh:( n4:| rl:( br:< js:| ie:{ fl:( mo:}