Guckst du hier:
Das Muster soll nicht enthalten:
- dynamisch.php
- alles mit index im Namen
Zum ersten: warum ?
Zum zweiten: RewriteCond %{REQUEST_URI} !index
Das Muster soll enthalten:
- alles was mit .htm, .html, usw. endet
- keine Endung hat.
RewriteCond %[REQUEST_URI} (.html|.htm.|.php|.css)$ [OR]
RewriteCond %{REQUEST_URI} [^.]$
Zusammengesetzt sieht das dann so aus:
RewriteEngine On
RewriteCond %{REQUEST_URI} !index
RewriteCond %[REQUEST_URI} (\.html|\.htm\.|\.php|\.css)$ [OR]
RewriteCond %{REQUEST_URI} [^.]$
RewriteRule (.*) dynamisch.php [L]
Hier einer meiner Versuche.
RewriteRule ^[^d][^y][^n][^a][^m][^i][^s][^c][^h][^\.][^p][^h][^p](.*)\.html$ /dynamisch.php?b=$1 [QSA]
Alles, was in eckigen Klammern steht, bezeichnet Zeichenklassen. Alles mit einem ^ davor, negiert diese. Das brauchst du in diesem Fall sicher nicht.
QSA bezeichnet den originalen Querystring, wenn du ihn veränderst, wird er auch so an dynamisch.php weiter gegeben.
Anmerkung noch: du musst Dir dann natürlich noch überlegen, was du mit Urls mit index machst.
Science flies you to the moon.
Religion flies you into buildings.
selfcode: ie:{ fl:| br:^ va:? ls:< fo:{ rl:( n4:{ ss:} de:[ js:} ch:{ sh:) mo:? zu:)