CommentsTrack light: Cookie & mod_rewrite

Published 2005-10-21, 15:26

Mein Betatest des neuen CommentsTrack light (CTl) läuft nun schon einige Zeit, und das auch recht erfolgreich. Es gibt immer noch kein Backend, aber das ist eigentlich recht schnell zusammengebastelt.

Mehr Sorgen machte mir der umständliche Einbau in eine Domain. Ist ein bestimmter Cookie gesetzt, werden alle Abfragen auf die Index-Datei über ein anderes Script geleitet. Dazu musste ich bisher jedoch Veränderungen an der Index-Datei vornehmen, im Falle von WordPress an der index.php.

Vorhin kam mir dann die Idee, das ganze schon eine Ebene zuvor ablaufen zu lassen und die .htaccess-Datei zu nutzen die auf den meisten Apache-Server ja nutzbar ist. Ich wusste nicht ob man per mod_rewrite Cookies auslesen kann, im Manual habe ich nun allerdings wirklich was passendes gefunden:

RewriteCond -> Server-Variables -> HTTP_COOKIE

Damit sollte es möglich werden die Anfragen ohne Änderungen an den eigentlichen Script-Dateien auf das CTl zu leiten – muss ich nachher gleich mal ausprobieren ob das so wirklich funktioniert.

[Update] Es scheint tatsächlich zu funktionieren. Nutzer die

[1] das Cookie haben (Cookie „owner“, Wert „1“),
[2] die Startseite aufrufen,
[3] nicht die Domain selbst als Referer
[4] oder gar keinen Referer haben
[5] werden auf die Datei commentstrack.php umgeleitet.

# BEGIN CommentsTrack light
RewriteCond %{HTTP_COOKIE} .*owner=1.*
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{HTTP_REFERER} !HTTP_HOST
RewriteCond %{HTTP_REFERER} !^$
RewriteRule ^(.*)$ /commentstrack.php [L]
# END CommentsTrack light

Jemand hier der mir sagen könnte ob das von der Syntax her alles passt?

[Update 2] Die dritte RewriteCondition war ziemlicher Müll, habe ich in einem extra Beitrag nun aber gefixt.

Diskussion zum Artikel

» Selbst kommentieren

  1. ( 1 )

    […] Leider war das nicht so einfach wie erhofft, und so habe ich nun einige Zeit mit der .htaccess-Datei verbracht. Nun funktioniert das ganze aber sehr schön, durch Klick auf die eigene URL lassen sich die Kommentare nun zuverlässig tracken. […]

    Pingback by Betamode » CommentsTrack light: 2 Versionen? am 22. Oktober 2005

Sorry, the comment form is closed at this time.

20 queries. 0,192 seconds.