HowTo: Kurz-URLs für (fast) alle Wegpunkte

Im Geoclub kam kürzlich der Vorschlag, eine Möglichkeit zu schaffen mit der man ganz bequem die Wegpunkte aller möglichen Geocachingplattformen aufrufen kann. Das stieß nun nicht wirklich auf Begeisterung, darum soll es aber hier nicht gehen. Ich selbst hatte mir so etwas schonmal für die OC-Knoten gebastelt und irgendwann auch GC- bzw. TC-Wegpunke mit reingenommen. Inspiriert durch den Thread im Geoclub habe ich die Sache nun wieder aufgegriffen und endlich alles ein wenig aufgebohrt.

Neben den schon vorhandenen Wegpunkten habe ich gleich noch die Waymarks aufgenommen und das schnelle Ansteuern von Trackables ermöglicht. Kniffliger wurde die Sache dann bei den Wegpunkten von navicache.com, denn hier wird der Wegpunkt zunächst von hexadezimal nach dezimal gebracht und dann im URL verwurstet.  Und so funktioniert das Ganze:

Alles was man braucht ist erstmal eine Domain die sich dafür eignet. Also eine mit möglichst kurzem Namen. In meinem Falle habe ich aeinfach auf dafb-o.de zurückgegriffen, das war mir kurz genug. Da habe ich eine Subdomain eingerichtet – coord.dafb-o.de – und die dient nun als Wegpunktnavigator. Viel ist dann nicht mehr nötig. Als erstes kommt eine .htaccess ins Serverroot, die folgendes enthält:

RewriteEngine on
# Opencaching-Nodes
RewriteRule ^OC(.*)$ http://www.opencaching.de/viewcache.php?wp=OC$1 [NC]
RewriteRule ^OP(.*)$ http://www.opencaching.pl/viewcache.php?wp=OP$1 [NC]
RewriteRule ^OZ(.*)$ http://www.opencaching.cz/viewcache.php?wp=OZ$1 [NC]
RewriteRule ^OS(.*)$ http://www.opencaching.se/viewcache.php?wp=OS$1 [NC]
RewriteRule ^OK(.*)$ http://www.opencaching.org.uk/viewcache.php?wp=OK$1 [NC]
RewriteRule ^ON(.*)$ http://www.opencaching.no/viewcache.php?wp=ON$1 [NC]
RewriteRule ^OU(.*)$ http://www.opencaching.us/viewcache.php?wp=OU$1 [NC]
RewriteRule ^OL(.*)$ http://www.opencaching.lv/viewcache.php?wp=OL$1 [NC]
# GPSGames
RewriteRule    ^GE(.*)$ http://geocaching.gpsgames.org/cgi-bin/ge.pl?wp=GE$1 [NC]
# Geocaching Australia
RewriteRule    ^GA(.*)$ http://geocaching.com.au/cache/GA$1 [NC]
# Terracaching
RewriteRule ^TC(.*)$ http://www.terracaching.com/viewcache.cgi?C=TC$1 [NC]
# Geocaching
RewriteRule    ^GC(.*)$ http://www.geocaching.com/seek/cache_details.aspx?wp=GC$1 [NC]
# Waymarks
RewriteRule    ^WM(.*)$ http://www.waymarking.com/waymarks/WM$1 [NC]
# Trackables
RewriteRule    ^TB(.*)$ http://www.geocaching.com/track/details.aspx?tracker=TB$1 [NC]
# Geokrety
RewriteRule ^GK(.*)$ http://coord.dafb-o.de/hdkret.php?krety=GK$1 [NC]
# Navicache
RewriteRule ^N(.*)$ http://coord.dafb-o.de/hexdec.php?cache=N$1 [NC]

Das Umschreiben für Navicache sollte am Ende stehen, stünde es direkt am Anfang, dann wäre der erste Aufruf der ein ‚N‘ enthält fällig und das wollen wir ja nicht. Der Navicachewegpunkt soll nämlich erstmal intern weitergereicht werden, und zwar in diesem Falle an ein Script namens hexdec.php, das einfach nur das hier enthält:

<?php
	if($_GET["cache"] != '')
	{
		$naviwp = hexdec($_GET["cache"]);
		Header("Location: http://www.navicache.com/cgi-bin/db/displaycache2.pl?CacheID=$naviwp");
		exit();
	}
?>

Und das war es auch schon. In meinem Fall bedeutet das, das bspw. ein Aufruf in der Form http://coord.dafb-o.de/OCAA10 meinen Nachtcache anzeigt. Nach der gleichen Logik wie Navicache funktionieren auf die Geokrety.  Hier muß die Referenznummer ebenfalls von hex nach dec umgebaut werden damit die Sache klappt. Das Script sieht dann dementsprechend ähnlich aus:

<?php
	if($_GET["krety"] != '')
	{
		$gk = hexdec($_GET["krety"]);
		Header("Location: http://geokrety.org/konkret.php?id=$gk");
		exit();
	}
?>

So ganz neu ist die Sache übrigens nicht, direkt bei den Geokrety gibt es solch ein Tool nämlich schon ein wenig länger, obendrein noch für allerlei Kleinigkeiten mehr. Allerdings gibt es dort einen entscheidenden Nachteil: Es genügt nicht, den Wegpunkt (bzw. die Referenznummer) einfach an einen kurzen URL anzuhängen. Entweder man verwendet das Formular oder man muß den URL noch und den Dateinamen des Scripts erweitern, was den Verkürzungseffekt schon wieder deutlich minimiert. Da ist die hier vorgestellte Lösung wesentlich einfacher ausgerufen.

P.S. Die Anleitung ist zum Selberbauen gedacht, für den Fall das mein Webserver zu arg mit solchen Anfragen strapaziert wird, werde ich ihn selbstredend abschalten. Klar, oder? Allerdings ist probieren und auch eine moderate Nutzung ist natürlich kein Problem.

Also bitte jeder nur ein Kreuz…! 😎

Schrottie

Ich blogge hier seit Anfang 2005 über wechselnde Themen. Zumeist handelt es sich dabei um Linux, Android, Geocaching oder Fotografie, aber zunehmend auch rund ums Fahrradfahren (mit MTB und Rennrad), das ich nach einigen Jahren Pause wieder für mich entdeckt habe. Dabei ist die Themenwahl insgesamt recht selektiv, also ich schreibe immer nur dann, wenn mich etwas wirklich interessiert und/oder bewegt und so kommt es dann auch, das man hier zuweilen auch private Dinge findet. Wer mir für die Arbeit ein kleines Dankeschön zukommen lassen möchte, der kann dies gern über meinen Amazon Wunschzettel tun. :-)

3 thoughts to “HowTo: Kurz-URLs für (fast) alle Wegpunkte”

  1. simpel, effektiv, aber irgendwie gehöre ich da evtl. noch nicht zur Zielgruppe. Das liegt vllt daran, dass ich noch nicht wirklich in der Verlegenheit war, in der dort im Forum geschrieben wurde, oder ich eine andere Lösung bevorzuge.

  2. Vielen Dank dafür! Ich verwende dieses Script intern und bin sehr zufrieden damit.
    Da es jetzt ja nun mit geocaching.com eine weitere Plattform gibt, ist folgende zusätzliche Zeile notwendig:

    # Opencaching.com von Garmin
    RewriteRule ^OX(.*)$ http://www.opencaching.com/#geocache/OX$1 [NC,NE]

    Btw: wird es für OC.it und OC.es eigene Kürzel (bspw. OI etc.) geben?

    Ich wünsche frohe Festtage!

    1. Naja, für Garmin sieht es bei mir so aus:
      RewriteRule ^OX(.*)$ http://www.opencaching.com/#geocache/OX$1 [NE,L]

      Und was IT und ES betrifft: Vorerst wird es keine eigenen Präfixe geben.

Kommentare sind geschlossen.