Page 1 of 1

mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-19 23:00
by fire
mod_rewrite akzeptiert max. 2 zu übergebende werte. bei 3 werten gibt es einen error 404.

Kennt jemand das problem oder hat eine lösung für mich?

### Serverdaten:
OSF1 V5.1 2650 alpha
Apache/1.3.28 (Unix) mod_jk2/2.0.3-dev mod_ssl/2.8.15 OpenSSL/0.9.7a PHP/4.3.2

### .htaccess

Code: Select all

RewriteEngine on

RewriteRule ^testmit2-([a-z0-9]+)-([a-z0-9]+).php$ /~sozio/test/test.php?var1=$1&var2=$2 [L]
RewriteRule ^testmit3-([a-z0-9]+)-([a-z0-9]+)-([a-z0-9]+).php$ /~sozio/test/test.php?var1=$1&var2=$2&var3=$3 [L]
Beispiel:
mit 2 Variablen
.../~sozio/test/testmit2-wertvariable1-wertvariable2.php (funktioniert)

mit 3 Variablen:
.../~sozio/test/testmit3-wertvariable1-wertvariable2-wertvariable3.php (funktioniert NICHT, d.h. error 404)

Re: mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-20 10:49
by simcen
Probier mal

Code: Select all

RewriteRule ^testmit3-([a-z0-9]+)-([a-z0-9]+)-([a-z0-9]+).php$ /~sozio/test/test.php?var1=$1&var2=$2&var3=$3 [QSA,L]

Re: mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-20 10:58
by fire
bringt leider keine veränderung. --> 404

die regel greift einfgach nicht.

Re: mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-20 12:55
by mitmacher
oki, hier die lösung (gerade ausprobiert):

nimm mal dies:

Code: Select all

RewriteRule ^/testmit3-([a-z0-9]+)-([a-z0-9]+)-([a-z0-9]+).php$ /~sozio/test/test.php?var1=$1&var2=$2&var3=$3 [L]
wichtig:
- innerhalb von Vhosts fangen URLs immer mit "/" an (linke seite rewrite)
- der Punkt der ".php"-Endung muss maskiert werden zu ".php"

ich wundere mich aber, dass die erste variante überhaupt funzte mit nur 2 variablen. ich heben es eben auch mit 4 ausprobiert, und keine probleme. rewriterules scheinen wirklich echte reg-exps zu sein, ohne einschränkungen... ;-)

Re: mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-20 13:06
by simcen
Ui stimmt.
mitMacher wrote:rewriterules scheinen wirklich echte reg-exps zu sein, ohne einschränkungen...
...und auch ohne kompromisse =)

Re: mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-20 20:23
by fire
auch damit funktioniert es nicht ... :(

Re: mod_rewrite akzeptiert max. 2 werte

Posted: 2004-04-20 22:28
by mitmacher
echt? schade... :-(

dann fällt mir nur noch ein, dass es evtl. doch an der apache-Version liegen könnte. bei mir läuft 2.0.48-9.

aber erzähle doch bitte erstmal, in welcher Art Container du versuchst, das ganze zu packen:
- in einen <directory>-
- oder einen <virtualhost>-Bereich?