* Marcus Franke <[EMAIL PROTECTED]> wrote:
> Ich brauche die Zahl, die in der Variablen name übergeben wird
> 
> RewriteCond %{QUERY_STRING}   ^name=([0-9]+)
> RewriteRule ^altes.php$       http://www.dom.tld/pfad/$1.html [L,R=301]
> 
> Doch, was passiert, wenn ich den URL im alten Format aufrufe?
> Er wird auf www.dom.tld/pfad/.html?name=11111 umgeschrieben..
> 
> Als wäre in $1 nichts gefunden worden, und der Inhalt von
> QUERY_STRING wird noch mal fröhlich an den neuen URL angeklebt.

Du musst %1 anstatt $1 verwenden, um auf die Referenz auf das Muster
der Condition zuzugreifen.

RewriteCond %{QUERY_STRING}   ^name=([0-9]+)
RewriteRule ^altes.php$   http://www.dom.tld/pfad/%1.html [L,R=301]

> Ich habe für den regex auch schon (.*) genommen, selbes Spiel.
> 
> Ich verstehe es einfach nicht mehr, selbst wenn ich $1 gar
> nicht angebe in der RewriteRule wird mir der Inhalt von
> QUERY_STRING ausgegeben.

Du meinst, auch ohne Dein Zutun wird der ursprüngliche QUERY_STRING an
die neue URL angehängt? Das ist normales Verhalten.

Falls Du das nicht willst, siehe auch dazu die mod_rewrite Dokumentation
zur Direktive "RewriteRule" 

,----  Note: Query String
| [...] When you want to erase an existing query string, end the
| substitution string with just a question mark. [...]
`----

- Sebastian

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an [EMAIL PROTECTED]
           sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------

Antwort per Email an