Klicks auf externe Links verfolgen

Wenn ein Nutzer auf einen Link klickt, der zu einer fremden Seite führt, so kann dies normalerweise nicht anhand von Logfiles nachvollzogen werden. Der Grund hierfür ist, dass der Browser keine Daten von Ihrem Webserver braucht, wenn er auf eine externe Seite geht. Deshalb wird auch keine Anfrage an Ihren Webserver gestellt und somit wird nichts protokolliert. In diesem Tutorial wird gezeigt, wie man dennoch Klicks auf externe Links mitprotokollieren kann.

Klicks protokollieren

In den Logfiles werden alle Anfragen protokolliert, die an den Webserver gestellt werden. Klickt jemand auf einen Link auf einer Ihrer Webseiten, so ruft der Browser direkt vom Webserver der Zieladresse auf und in Ihrem Logfile wird nichts protokolliert. Damit der Klick dennoch geloggt wird, müssen Sie den Linkverweis so abändern, dass die Anfrage zuerst auf den eigenen Server geht und dann erst auf die externe Seite weitergeleitet wird.

spezielle Lösung (für Apache-Webserver)

  1. Angenommen Ihre Datei index.html besitzt einen Link auf die Mescalero Informationsseite und Sie wollen wissen wie oft jemand auf diesen Link klickt. Der Link sieht in Ihrem Quelltext möglicherweise so aus:
    <a href="http://www.rendle.de/mescalero.html">Mescalero</a>
  2. Setzen Sie jetzt den Link auf eine nicht vorhandene Datei unter Ihrer Domain:
    <a href="http://www.ihredomain.de/externerlink_mescalero">Mescalero</a>
  3. Tragen Sie in die Steuerungsdatei .htaccess auf Ihrem Webserver folgenden Eintrag ein:
    Redirect /externerlink_mescalero http://www.rendle.de/mescalero.html
  4. Wenn ein Besucher jetzt auf den Mescalero-Verweis klickt, wird zuerst an Ihren Webserver eine Anfrage nach der Seite externerlink_mescalero gestellt. Ihr Webserver protokolliert die Anfrage und leitet den Besucher wegen des Eintrags in der htaccess-Datei an http://www.rendle.de/mescalero.html weiter.

allgemeine Lösung (für Apache-Webserver)

Die eben vorgestellte Lösung funktioniert zwar, aber es ist ziemlich aufwendig neue externe Links einzutragen. Mit einer kleinen Änderung können Sie aber auf einfache Weise beliebige externe Links verfolgen:
  1. Tragen Sie in die Steuerungsdatei .htaccess auf Ihrem Webserver folgenden Eintrag ein:
    RedirectMatch ^/externerlink_(.*)$ http://$1
  2. Jetzt können Sie auf Ihren Webseiten beliebige externe Links fürs Protokollieren hinzufügen, indem Sie stets folgendermaßen verlinken:
    <a href="http://www.ihredomain.de/externerlink_EXTERNESEITE">
    Also z.B.:
    <a href="http://www.ihredomain.de/externerlink_www.google.de">
    <a href="http://www.ihredomain.de/externerlink_www.yahoo.de">
    <a href="http://www.ihredomain.de/externerlink_www.rendle.de/index.html">

Klicks in Mescalero auswerten

Nachdem Sie nun externe Links mitprotokollieren lassen, können Sie diese Zugriffe in Mescalero auswerten. In diesem Beispiel wird ein Bericht erzeugt, der alle angeklickten externen Links mit der Häufigkeit der Klicks aufzählt.
  1. Erstellen Sie mit dem Berichtsassistenten einen neuen Bericht.
  2. Wählen Sie für die Gruppierung das Feld "komplexe Daten" aus und geben Sie substr(filename,15) ein.
  3. Bei den statistischen Daten sollte "Anfragen zählen" aktiviert werden.
  4. Fügen Sie eine einfache Bedingung als Einschränkung hinzu, die überprüft, ob der Dateiname ähnlich ist wie /externerlink_*.
Jetzt können Sie den neuen Bericht aufrufen und die Statistik erstellen lassen.

Erklärung des Berichts

  1. Durch das Eintragen des Redirects und die Verlinkung auf diesen Redirect werden Klicks auf solche Links in den Logfiles gespeichert.
  2. In den Logfiles steht im Wert filename dann Werte wie /externerlink_www.google.de.
  3. In dem neuen Bericht sollen alle Anfragen an externe Links aufgenommen werden. Das sind gerade alle Anfragen, die mit /externerlink_ anfangen. Dies wurde über die Einschränkung sichergestellt.
  4. In den Bericht soll als Daten das eingetragen werden, was nach dem Unterstrich "_" steht. Da /externerlink_ aus 14 Buchstaben besteht, soll alles ab dem 15ten Buchstaben verwendet werden. Deswegen wurde substr(filename,15) für die Gruppierung gewählt.

Anmerkungen zu Redirects

Bitte beachten Sie, dass auch Dritte von Ihren Weiterleitungen Gebrauch machen können. Ein Dritter könnte statt direkt auf http://andereseite zu verlinken auf Ihren Redirect verlinken http://ihreseite/externerlink_andereseite. In den Logs von andereseite würde dann Ihre Seite statt der des Dritten im Referrer auftauchen.
Falls Sie das nicht möchten, sollten Sie nicht die "allgemeine Lösung", sondern die "spezielle Lösung" wählen.

Weitere Informationen