# mod_rewrite problem oder doch nicht?



## piti66 (26. September 2007)

Hallo,

wie haben ein Problem auf unserer Seite nach einer Umstellung.
Folgenden rewrite regel:
RewriteRule ^news/([a-zA-Z0-9-]+)/([0-9]+)\.html$ content/news.php?id=$2 [NC,L]

Der Link geht nicht:

```
www.xxxxxx.com/news/nasa-sucht-neue-astronauten/00001017.html
```

Der Link geht:

```
www.xxxxxx.com/news/nasa-sucht-neue-astronautens/00001017.html
```

Also wenn ich dem Link ein s anhänge geht dass ganze ohne nicht. Bei vielen News geht es aber bei einigen wie den genannten nicht.
Kann sowas an der Datenbank liegen? Oder ne andere idee?

Mir ist gerade noch aufgefallen, dass ich den Zusatz am Ende setzten muss also dass "s" woanders geht es nicht.

mfg

Sebastian


----------



## Tyg3r (26. September 2007)

Hm,

würde den rewrite mal sicherheitshalber so schreiben:
RewriteRule ^news/([a-zA-Z0-9-]+)/([0-9]+)\.html$ content/news.php?id=$2&title=$1 [NC,L]
wobei das nicht das Problem beheben wird...

Was meinst Du mit "Link geht nicht"?
404 Seite?
oder falsches Ergebnis aus DB?

Gib doch mal in news.php dein $_GET vars aus:
print_r($_GET);

Vielleicht hilft das ja weiter 

Gruß tyg3r


----------



## piti66 (26. September 2007)

Ja die 404er Seite kommt.
$Get kann ich dir nicht ausgeben, weil ja die 404 kommt 
Wie gesagt ein Link geht der andere nicht, obwohl alle Sonderzeichen und Umlaute umgewandelt sind bzw. auch keine haben.
Der muss garnicht auf die news.php kommen sondern einfach abrechen.

mfg


----------



## Tyg3r (26. September 2007)

Kenne den htaccess Syntax leider nicht allzu gut.
Aber ich würde ihn so schreiben:

RewriteRule	^news/([a-zA-Z0-9._-]*)/([0-9]*)\.html$ content/news.php?id=$2&title=$1	[QSA]

Probier einfach mal aus


----------



## piti66 (26. September 2007)

Bringt nichts  Trotzdem danke!


----------



## Tyg3r (26. September 2007)

Hat der "titel" in der URL eine programmiertechnische Bedeutung?
Oder nur SEO?

Falls Du den Titel im Code verwendest dann hast Du eventuell eine Weiterleitung auf eine Seite (welche nun, warum auch immer eine 404 ist), wenn Eintrag in DB nicht gefunden wurde ...


----------



## Tyg3r (26. September 2007)

Ein bekanntes Problem mit htaccess auf unterschiedlichen Sytemen (Du meintest ja es gab nen Update) ist ein / bei der Übersetzung:

anstatt:
RewriteRule ^news/([a-zA-Z0-9._-]*)/([0-9]*)\.html$ content/news.php?id=$2&title=$1 [QSA]
mal:
RewriteRule ^news/([a-zA-Z0-9._-]*)/([0-9]*)\.html$ /content/news.php?id=$2&title=$1 [QSA] 
testen.

Ansonsten weiß ich auch nicht weiter ^^


----------

