Schönes Feature von Apache, aber lästig…

Der Apache Web Server hat das nette Feature (man kann es auch abschalten, aber oft ist es schon wegen Groß- und Kleinschreibung sehr nützlich), dass beim Zugriff auf eine Datei, die es nicht gibt, eine andere gemeldet wird, die so ähnlich heißt. Bei meinem kleinen Jump&Run Exkurs erwies sich das als recht lästig.

Und das kam so: es gibt die Möglichkeit, mehrere Spielfuguren zu definieren und dann eine zum Spielen auszuwählen. Dazu macht der Silverlight Code Web Zugriffe (HttpWebRequest.Create) auf Dateien mit dem Namensmuster figur/Spieler01.xaml, figur/Spieler02.xaml usw. Wird die Datei nicht gefunden, so endet die Suche. Beim Microsoft IIS Web Server geht das so auch, Apache antwortet bei dem Zugriff auf figur/Spieler02.xaml einfach mit einem Redirect auf figur/Spieler01.xaml. Will man die Redirects im HttpWebRequest nicht grundsätzlich verbieten, weil damit andere Nachteile verbunden sind, steht man erst einmal auf dem Schlauch.

Ich habe als relativ sicheren Ansatz für mein Problem die ResponseUri im HttpWebResponse mit der angeforderten Adresse verglichen. Sind diese nicht identisch, gehe ich von einem Redirect aus und nehme an, dass die angeforderte Datei so nicht existiert. Das ist aber keine grundsätzliche Lösung und kann zu anderen Problemen führen – etwa wenn nur die Schreibweise anders ist. Als schnelle Hilfe aber allemal ausreichend.

Jochen

Kinderkram

Mal wieder ein kleines Intermezzo. Die Frage meines Sohnes “Papa, kannst Du nicht ein Jump&Run programmieren?” konnte ich natürlich 🙂 nicht einfach so im Raum stehen lassen. Da ich mich eh weiterhin in Silverlight einarbeiten wollte, habe ich mich entschieden, mal einen Prototyp zu erstellen. Viel kann er zwar nicht, aber so mit einer Spielfigur rumlaufen, Dinge einsammeln etc. funktioniert schon. Der Code für diese erste Variante ist schon fertig (auch öffentlich über das Hilfedokument verfügbar, man siehe darin den Link ganz unten), an den optischen und aktustischen Effekten arbeiten wir noch – so kann die Spielfigur beim Laufen auch animiert werden, dazu muss man aber Bildsequenzen erstellen, was recht lästig ist.

Den aktuellen Stand möchte ich dem geneigten Leser aber nicht vorenthalten.

Have Fun

Jochen