HowTo: Kurz-URLs für (fast) alle Wegpunkte
Geschrieben von +Maik Bischoff am 1. September 2010 um 17:09
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…!




Am 1. September 2010 um 17:21 Uhr
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.
Am 24. Dezember 2010 um 23:08 Uhr
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!
Am 25. Dezember 2010 um 06:10 Uhr
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.