Gunther: mod_rewrite .htaccess - Index Datei aus Adresszeile entfernen

Beitrag lesen

Hallo werte Selfgemeinde,

ich glaube, ich habe meine Frage schon selbst beantwortet.

Das "funktioniert" auch soweit wie gewollt, allerdings gibt es noch einen Punkt, bei dem ich nicht so recht weiß, wie ich den umsetzen soll.

Und zwar kann man jetzt immer noch aufrufen:
  http://example.com/index.php

Das ist natürlich nicht im Sinne des Erfinders. Vielmehr soll in der Adresszeile dann nur stehen:
  http://example.com stehen.

Wie kann ich das jetzt noch erreichen?

Ich habe jetzt noch folgendes eingefügt:

  
# remove index file from URL  
RewriteCond %{REQUEST_URI} ^/index\.php$  
RewriteRule ^ / [L,R=301]  

Im Ganzen sieht es jetzt also so aus:

  
  
# remove slash if not directory  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule ^(.+)/$ /$1 [L,R=301]  
  
# remove dot and everything following  
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_METHOD} =GET  
RewriteRule (.*)\..*$ /$1 [L,R=301]  
  
# remove index file from URL  
RewriteCond %{REQUEST_URI} ^/index\.php$  
RewriteRule ^ / [L,R=301]  
  
# rewrite to 'index.php' without redirect  
RewriteRule . index.php  

Natürlich bin ich aber auch jederzeit sehr gerne an Verbesserungs-/ Optimierungsvorschlägen interessiert.

Gruß Gunther