# Mod_Rewrite - was mache ich falsch?



## thefaxx (25. Januar 2010)

Hallo Leute,

habe mir eine .htaccess-Datei für folgenden Task erstellt:

http://www.domain.de/Klaus.Kleber

wird zu

http://www.domain.de/users.php?name=klaus.kleber

So sieht mein Code aus:

```
RewriteCond %{REQUEST_FILENAME} [a-z]+(\.|_)+[a-z]+ [NC]
RewriteRule ([a-z]+(\.|_)+[a-z]+)$ http://www.domain.de/users.php?name=$1 [L]
```

Was mache ich falsch?


----------



## rd4eva (27. Januar 2010)

Laut deiner RewriteRule sind die Buchstaben a-z nur klein erlaubt.

Folgende Lösung sollte in etwa funktionieren

```
RewriteRule ^([a-z|A-Z]+(\.|_)+[a-z|A-Z]+)$ http://www.domain.de/users.php?name=$1 [L]
```

Ich kann mich irren aber eventuell wird dir das in einer Endlosschleife Resultieren also wirst du vermutlich noch irgndwie sowas brauchen

```
RewriteCond %{QUERY_STRING} !name=.* [NC]
```


----------



## grillfleisch (14. März 2010)

Hallo, es gibt soviele threads zu diesem thema, ich möchte nicht noch einen aufmachen, da der titel ja passt  xD .

Hallo erstmal. 

Ich versuche schon seit längere zeit von php Datein die endung zu verstecken. also das http://www.domain.de/url.php wie ein ordner dargestellt wird. http://www.domain/url/

Ich habe viele threads zu diesem thema in diesem forum gefunden und mir auch durchgelesen. habe auch einige sachen getestet, doch ich komme nicht auf das ergebniss was ich suche .   
Ich benutze schon absolute linkjs (<a href="/changelog/"... ).  
Ich teste mit drei verschiedenen links. 

bei href="/index   findet er eine datei und gibt sie auch ohne der endung .php aus. Nur leider ohne den abschließenden / , so das es wie ein ordner ausschaut. 
bei href="/regist.php gibt er die datei mit php aus. Das will ich aber auch nicht er soll dabei auf " /regist/  " umleiten oder abbrechen. falls man es im browser manuel mit php eingben sollte.  
bei href="/changelog/ zeigt er eine weiße seite an mit dem abgearbeitetem html code, css wird nicht beachtet. auch keine lösung!

.htaccess datei 

```
RewriteEngine on 
 
RewriteRule ^/file/(\.*)/(\.*)/(\.*)/(\.*)/$ /file.php  [L]
```


```
RewriteEngine on 
Options +FollowSymlinks 
RewriteBase /

RewriteCond %{REQUEST_URI} datei/(.*)/(.*)/$
RewriteRule file/(\.*)/(\.*)/(\.*)/(\.*)/$ /file\.php?$1=$2&$3=$4
```

ich habe vieles getestet ..ich kenn mich mit der syntax auch nicht so besonders aus, ich weiß aber das es mit ^ anfängt und $ beendet wird. 

```
RewriteRule ^/changelog/$ changelog.php
```
oder

```
RewriteRule ^/index.php$ /index/
```

damit hab ich es auch getestet. und andere sachen 

könnte einer mir evtl. helfen... 

danke im voraus.

lg
sebastian


----------



## thefaxx (15. März 2010)

Hi,

sollte so funktionieren:


```
RewriteCond %{REQUEST_URI} (.*)\/$
RewriteRule (.*)\/$ $1\.php
```


----------

