Hallo,
tja, dem Irrglauben, ich könnte mit mod_rewrite meinen Querystring umschreiben, bin ich auch mal verfallen

als ich angefangen habe, mich damit zu beschäftigen. Wäre ja auch zu schön gewesen.
Aber wie sollte das gehen? Die RewriteEngine "biegt" ja die Requests von außen um und nicht Deine Antwort (hier u.a. Deine internen Links).
Du musst also erstmal Deine Linkstruktur ändern, wie sie nach außen hin zu sehen sein soll und dann kannst Du darauf basierend mittels htaccess auf die tatsächlichen Inhalte verweisen.
Vereinfacht gesagt, wenn Deine bisherigen Links so aussahen wie index.php?id=Ursula&hobby=stricken, dann musst Du Deinen Code erstmal so umstricken, dass Deine Links z.B. so aussehen: ursula-stricken.html . Wenn jetzt ein Besucher auf ursula-stricken.html klickt, dann kannst Du mittels htaccess daraus index.php?id=ursula&hobby=stricken machen. Nur so rum geht das...
Rewrite frickelt Dir also Deine "Aufrufe" um, nicht aber Deine Inhalte.
Wenn es nur darum geht, eine exakt bestimmte Datei umzuleiten, dann kannst Du auch
#Soll die Seite info.php in foo.php umbenennen
RewriteRule \/info.php$ /foo.php
schreiben.
Um den Prefix
http://zahnrad.de musst Du Dich nicht kümmern, da Du das via Rewritebase der Rewriteengine überlässt. Lediglich um das "/" sollte man sich evtl. kümmern, damit sowohl
http://zahnrad.de als auch
http://zahnrad.de/ zum selben Ergebnis kommen (ich mach das jedenfalls immer so; sollte ich vllt. mal ausprobieren, ob's wirklich nötig ist). Allerdings muss im o.g. Beispiel auch die Datei foo.php im Gegensatz zu info.php vorhanden sein. Bei der Anordnung gilt immer:
RewriteRule Bedingung /Ergebnis, nicht andersherum
Greetz
cw