2010-12-16 11 views
0

Ich frage mich, wie kann ich die folgende URL unter Verwendung von mod_rewrite umschreiben? Und gibt es ein Online-Tutorial, das mod_rewrite für Dummies erklärt?Mod Rewrite 2 Teil Frage

Wie kann ich diese URL umschreiben.

http://www.example.com/sitemap.php 

zu

http://www.example.com/sitemap.xml 
+1

Dupe von http://stackoverflow.com/q/4457835/52721. @sleep - du hast gerade diese Frage gestellt. Mach weiter, wir machen hier keine Beulen. – Robert

+0

@Robert: Ich habe gewählt, um zu schließen, aber dieser Beitrag hat seitdem ein bisschen Aufmerksamkeit bekommen, also habe ich ihn für Mod-Review markiert, mit der Empfehlung, dass die beiden Fragen zusammengeführt werden. – AgentConundrum

+0

Fair genug. Fusion ist wirklich der richtige Weg, denke ich. – Robert

Antwort

2
RewriteRule sitemap.php sitemap.xml 

Das sollte es tun.

+0

das funktioniert nicht – HELP

+0

Arbeitete, als ich es testete ... Sie müssen möglicherweise 'RewriteEngine On 'darüber, wenn Sie dies in eine. Htaccess-Datei setzen –

+0

es ist, aber es funktioniert immer noch nicht die XML-Daten überhaupt. – HELP

2

Sie haben ein paar Optionen dafür, je nachdem, wie Sie es wollen.

Der einfachste Weg, eine Datei umleiten zu einem anderen einfach ist es, die Redirect Richtlinie zu verwenden:

Redirect /sitemap.php http://www.example.com/sitemap.xml 

Dies wird eine 302-Weiterleitung standardmäßig tun, aber man kann es durch zu einem 301 ändern Sie den Status Code hinzufügen als erste Parameter, das heißt:

Redirect 301 /sitemap.php http://www.example.com/sitemap.xml 

in beiden Fällen wird dies in einer Rundfahrt an den Browser zur Folge zurück, so wird die Adressleiste die neuen sitemap.xml Dateinamen zu zeigen, ändern. Wenn Sie nicht wollen, dass, können Sie die RewriteRule Direktive verwenden:

RewriteRule ^sitemap.php$ /sitemap.xml [L] 

Beachten Sie, dass dies ist, wie Sie die Regel schreiben würde, was ein „pro-dir Kontext“ genannt wird, das nur bedeutet, dass die Regel ist, geschrieben von innerhalb entweder einer .htaccess Akte oder von einem <Directory> Block. Wenn Sie es von Ihrer Hauptkonfiguration aus schreiben, benötigen Sie einen führenden Schrägstrich (d. H. ^/sitemap.php$), um zu zeigen, dass Sie meinen, dass die Regel dem Dokumentstamm entspricht.

+0

dies funktioniert nicht – HELP