# Mod Rewrite Problem



## greenslot (4. August 2012)

Hallo zusammen,

ich habe, wie der Titel schon sagt, ein Mod Rewrite Problem, bei dem ich nicht mehr weiter komme...

Ich habe mehrere statische Seiten, die ich von .php in .html umschreiben will. Klappt mit der letzten Zeile der htaccess.
Jetzt habe ich noch eine Seite (site.php), welche ich dynamisch füllen möchte.
Beides kappt leider nicht.

Mit beiden "RewriteRules" lande ich immer wieder auf site.php, auch wenn ich eine statische Seite aufgerufen habe.

Könnt ihr mir da bitte weiter helfen?


```
RewriteEngine on
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

RewriteRule ^(.*).html$ /theprojectB/site.php?url_id=$1 [L]
RewriteRule ^(.*).html$ $1.php [L]
```


----------



## Aragon0 (4. August 2012)

```
RewriteRule ^(.*).html$ /theprojectB/site.php?url_id=$1 [L]
```

leitet sämtliche Aufrufe an HTML-Seiten auf die site.php um, da jeder Aufruf  auf deine Seite die Bedingung "*.html" erfüllt. Du müsstest die Bedingung 
	
	
	



```
^(.*).html$
```
 auf einen bestimmten Pfad eingrenzen: 
	
	
	



```
^/theprojectB/(.*).html$
```
 *WICHTIG:* $_GET['url_id] liefert nicht nicht mehr die vollständige URL, die ist aber immer in $_SERVER['QUERY_STRING'] abrufbar.

Aber du kannst auch die zweite Regel löschen und mit site.php checken, ob die URL von site.php bearbeitbar ist und falls nicht per require das Script hinter der URL einbinden und ausführen lassen. 

Ich hoffe dass ich dir geholfen habe,

LG Aragon0


----------



## greenslot (5. August 2012)

Aragon0 hat gesagt.:


> ```
> RewriteRule ^(.*).html$ /theprojectB/site.php?url_id=$1 [L]
> ```
> 
> leitet sämtliche Aufrufe an HTML-Seiten auf die site.php um, da jeder Aufruf  auf deine Seite die Bedingung "*.html" erfüllt.


Danke, jetzt du es sagst.

Habe es dann mit einem zusätzlichen Ordner gelöst.


----------

