# htaccess RewriteRules und Variablen - Rule überschreibt echte pfade/dateien



## flogag (3. April 2011)

```
# für dateien mit id
RewriteRule ^(.*)/([0-9]+)/$ index.php?p=$1&id=$2
RewriteRule ^(.*)/([0-9]+)$ index.php?p=$1&id=$2

# für einzelne dateien
RewriteRule ^(.*)$ index.php?p=$1
RewriteRule ^(.*)/$ index.php?p=$1

RewriteCond %{REQUEST_FILENAME} !-d
# If the request is for a real directory (one that exists on the server), index.php isn't served.
RewriteCond %{REQUEST_FILENAME} !-f
# If the request is for a file that exists already on the server, index.php isn't served.
RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule ^(.*)$ /page/index.php
# All other requests are sent to index.php
```

Ich habe ein Problem mit dem Code oben. Die Zeilen folgenden Zeilen lösen Ablauffehler aus:

```
RewriteRule ^(.*)$ index.php?p=$1
RewriteRule ^(.*)/$ index.php?p=$1
```

Das Ergebnis soll eigentlich sein, dass ich aus
http://www.domain.de/page/impressum
dies generiere: http://www.domain.de/page/index.php?p=impressum

Leider werden dann reale Ordner und Dateien nicht mehr gefunden. Kennt sich jemand besser aus als ich und kann helfen?

Danke!


----------

