Die allwissende Müllhalde: server.de/?kontakt - wie geht das?

Beitrag lesen

Und zwar habe ich schon des öfteren Websites gesehen, welche (wenn man diese aufruft) folgendermassen in der Adresszeile aussehen: http://www.server.de/?kontakt, etc.

Wie kann man dies machen? Gibt es irgendwo ein Tutorial?

Du kannst jede beliebige URL, also auch jede beliebige Seite, mit Parametern (dem Teil, der mit dem Fragezeichen beginnt) aufrufen. Die Auswertung erfolgt in der Regel serverseitig durch das Programm oder Skript, das mit dieser URL aufgerufen wird. Der Parameterteil wird meistens als Variable QUERY_STRING o.ä. übergeben, was Du damit machst, bleibt Deiner Phantasie überlassen.
Welche Programmiersprachen Dir zu Verfügung stehen, mußt Du selber wissen.

Wie hier bereits geschrieben, ist es auch möglich, derartige URLs mittels mod_rewrite in interne URLs umzuwandeln (wie es mit allen URLs möglich ist). Eine Anfrage für Dein www.server.de/?kontakt würde dann vom Webserver beispielsweise erstmal (für den Benutzer unsichtbar) in www.server.de/kontakt.html umgesetzt werden, bevor der Webserver sich daran macht, eine solche Datei auf seiner Platte zu suchen.
Ob mod_rewrite oder etwas ähnliches auf Deinem Webserver zur Verfügung steht, sollte derjenige wissen, der den Webserver betreibt. Ein solcherart nutzloses Im-Kreis-laufen wird auch eher selten gemacht.

Diese Form von URLs (www.server.de/?kontakt) als Ersatz für normale URL-Pfade (www.server.de/kontakt) einzusetzen, ist sowieso herzlich sinnfrei. Sie hat keinerlei Vorteile, bringt nichts, was man nicht auch mit normalen Pfaden erreichen könnte, sondern birgt ganz im Gegenteil unter anderem den gravierenden Nachteil, daß Suchmaschinen sie (aus gutem Grund) gerne übergehen.

Du solltest den Einsatz von URL-Parameter auf Benutzereingaben beschränken. Hast Du eine Suchfunktion auf Deinen Seiten, ist gegen etwas wie "/suche.html?begriff=Hallo" nichts einzuwenden.
Möchtest Du hingegen das Seitenlayout in einer einzelnen Programmdatei halten und die einzelnen Seiten je nach übergebenem Parameter ausliefern (so wie in Deinem Beispiel), bietet sich entweder mod_rewrite an, um aus dem externen "/kontakt" ein internes "/index.cgi?kontakt" zu basteln, oder die PATH_INFO-Variante, die in etwa (extern) über "/index.cgi/kontakt" genutzt werden könnte. Beides versteckt die Parameter vor der Außenwelt, insbesondere Suchmaschinen, und erlaubt es, in der URL eine Seitenstruktur aufzubauen, an der sich der Benutzer entlang hangeln kann.