Andreas: Rewrite Rule: Umleitung von .html/.htm auf .php

Beitrag lesen

Hi Cheatah!

Also erstend will ich niemanden in dei Irre führen,
ich glaube Dir, dass Du diesen Fehler nicht vorsätzlich begehst, sondern einfach aus Unwissenheit.

Das weiß ich nicht. Daher auch dieser Thread um zu hinterfragen _ob_ meine Idee richtig war.

Was mienst Du mit "nach PHP geparst"? meinst Du das ich html-Dateien parsen soll?

Das ist der einfachste Weg um zu erreichen, dass PHP-Dateien trotzdem über einen auf ".html" endenden Localpart in der URL erreichbar sind. Natürlich kannst Du serverseitig die Dateien weiterhin auf ".php" enden lassen, wenn es Deiner Organisation hilft, und den Server so konfigurieren, dass er diese Änderung selbsttätig findet.

Also Du sagst ich soll nach außen hin gar kein .php ausgeben, sondern alles nur .htm? Serverseitig ist mir total wurst, da ich einfach auch .htm parsen kann, halt mit

AddType application/x-httpd-php .htm

Aber wie genau soll ich  das Deiner Meinung nach machen?

RewriteRule ^(\w+).html? /$1.php [L]

sowas in der Art? Aber warum? Außerdem habe ich ja alle internen  Links auf .php!  Verstehe nicht ganz was das bringen soll?!

Außerdem existieren nunmal keine html-Dateien mehr,

Das mag sein, allerdings sind es noch immer HTML-Ressourcen. Ich nehme zumindest nicht an, dass der User Deinen PHP-Code zu Gesicht bekommen soll, oder? :-)

PHP gibt nunmal normalerweise HTML-Code aus, dafür ist es gemacht und das kann es gut und schnell. Natürlich bekommen die Leute den PHP-Code nicht zu Gesicht, aber ich verwende ein eArt eigene Templates, ich binde Navigation, Header, Footer und globale Varoablem/Funktionen in alle Seiten ein, so dass ich bestimmte Dinge zentral verändern kann, ich verstehe nicht  ganz den Sinn das ich aus dynamischen Seiten statische Seiren vortäuschen soll?!

nur noch ein paar Einträge in Suchmaschinen auf die alte index.htmlm die es wie gesagt nicht mehr gibt, jetzt habe ich eine index.php als Startseite.

Der Name ist falsch gewählt, ganz einfach. Wenn die Startseite - mindestens nach außen hin - noch immer index.html heißt, haben Du und Deine Besucher eigentlich nur gewonnen: die Suchmaschinen sind noch aktuell, HTML-Ressourcen werden nicht falsch benannt, alle Links bleiben korrekt usw.

Also mit anderen Worten, in die htaccess ein
RewriteRule ^index.html? /index.php [L]

Außerdem wird die Adresse ja auch umgeschrieben, halt mit der Angabe moved permanently.

Genau das ist es, was Du nicht tun sollst. "Good URIs don't change. People change them." (Tim Berners-Lee)

Naja, zumindest steht das so bei google: http://www.google.de/intl/de/remove.html#change_url

Insbesondere ist es sinnfrei, Anfragen auf _existierende_ Ressourcen (egal wie sie lokal heißen mögen) auf die Startseite umzulenken.

Das mache ich ja nicht! Die Seite ist komplett neu, alle Einträge ausser der Startseite haben keinen Sinn! Die verlinkten Recourcen existieren schlichtweg nicht mehr, und die ganzen Links von Suchmschinen, Katalogen, Foren... landen im leeren!

Viele Grüße
Andreas