PDA

Bekijk Volledige Versie : mod_rewrite



willem
02/11/05, 13:12
Hoi,

Ik probeer url's te herschrijven met mod_rewrite, maar ik doe iets fout.
Met 1 variabele werkt 't (volgens mij) prima, maar met 2 of meer loopt 't in
de soep.

De inhoud van het .htaccess bestand staan bij de voorbeelden hieronder:

test met 1 variabele
http://willem.lowi.nl/modtest1var/

test met 2 variabelen
http://willem.lowi.nl/modtest2var/

Ik denk dat ik iets fout doe met de / in
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?page=$1&id=$2 [L]
maar voor zover ik gelezen heb in diverse tutorials is er niets mis mee...

Kan iemand me hier mee helpen?

Willem

SF
02/11/05, 13:12
"willem" <loki_142@hotmail.com> schreef in bericht
news:f19a2$43614751$54697374$23666@cache40.multika bel.net...
> Hoi,
>
> Ik probeer url's te herschrijven met mod_rewrite, maar ik doe iets fout.
> Met 1 variabele werkt 't (volgens mij) prima, maar met 2 of meer loopt 't
> in de soep.
>
> De inhoud van het .htaccess bestand staan bij de voorbeelden hieronder:
>
> test met 1 variabele
> http://willem.lowi.nl/modtest1var/
>
> test met 2 variabelen
> http://willem.lowi.nl/modtest2var/
>
> Ik denk dat ik iets fout doe met de / in
> RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?page=$1&id=$2 [L]
> maar voor zover ik gelezen heb in diverse tutorials is er niets mis mee...
>
> Kan iemand me hier mee helpen?
>
> Willem
>
>
kan je dit niet beter in een soort array plaatsen of is dat niet mogelijk?
Zover ik zie zoekt het script van a totz en komt vervolgens een schuin
streeptje tegen, dus daar kapt ie af
SF

SF
02/11/05, 13:12
"willem" <loki_142@hotmail.com> schreef

> RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?page=$1&id=$2 [L]
> maar voor zover ik gelezen heb in diverse tutorials is er niets mis mee...
>
> Kan iemand me hier mee helpen?
>
> Willem
>
>
misschien kan je nog proberen na het laatste haakje en voor de $ een / te
zetten zoals hier:
http://www.sitepoint.com/forums/showthread.php?t=293760
Geen idee of dat werkt
SF

Eric B. Bednarz
02/11/05, 13:12
"willem" <loki_142@hotmail.com> writes:

> test met 2 variabelen
> http://willem.lowi.nl/modtest2var/
>
> Ik denk dat ik iets fout doe met de / in
> RewriteRule

<snip>

Jij doet in zekere zin iets 'fout' met e1n '/' want je gebruikt
relatieve URI referenties; jij zit in de URI hierarchie met meerdere
variabelen zodoende dus vervolgens op een verkeerd niveau (de eerste
keer gaat het dan ook goed); cf.

<http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritebase>



--
hexadecimal EBB
decimal 3771
octal 7273
binary 111010111011

willem
02/11/05, 13:12
"Eric B. Bednarz" <bednarz@fahr-zur-hoelle.org> schreef in bericht
news:m3slumo4kb.fsf@nntp.bednarz.nl...
> "willem" <loki_142@hotmail.com> writes:
>
>> test met 2 variabelen
>> http://willem.lowi.nl/modtest2var/
>>
>> Ik denk dat ik iets fout doe met de / in
>> RewriteRule
>
> <snip>
>
> Jij doet in zekere zin iets 'fout' met e1n '/' want je gebruikt
> relatieve URI referenties; jij zit in de URI hierarchie met meerdere
> variabelen zodoende dus vervolgens op een verkeerd niveau (de eerste
> keer gaat het dan ook goed); cf.
>
> <http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritebase>

Zo ziet de .htaccess er nu uit:

RewriteEngine On
RewriteBase /modtest2var/
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?page=$1&id=$2 [L]

maar het probleem blijft hetzelfde

willem
02/11/05, 13:12
"SF" <sfranclGEENMAIL@wanadoo.nl> schreef in bericht
news:436156b9$0$80722$dbd43001@news.wanadoo.nl...
>
> "willem" <loki_142@hotmail.com> schreef in bericht
> news:f19a2$43614751$54697374$23666@cache40.multika bel.net...
>> Hoi,
>>
>> Ik probeer url's te herschrijven met mod_rewrite, maar ik doe iets fout.
>> Met 1 variabele werkt 't (volgens mij) prima, maar met 2 of meer loopt 't
>> in de soep.
>>
>> De inhoud van het .htaccess bestand staan bij de voorbeelden hieronder:
>>
>> test met 1 variabele
>> http://willem.lowi.nl/modtest1var/
>>
>> test met 2 variabelen
>> http://willem.lowi.nl/modtest2var/
>>
>> Ik denk dat ik iets fout doe met de / in
>> RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?page=$1&id=$2 [L]
>> maar voor zover ik gelezen heb in diverse tutorials is er niets mis
>> mee...
>>
>> Kan iemand me hier mee helpen?
>>
>> Willem
>>
>>
> kan je dit niet beter in een soort array plaatsen of is dat niet mogelijk?
> Zover ik zie zoekt het script van a totz en komt vervolgens een schuin
> streeptje tegen, dus daar kapt ie af
> SF

Volgens mij gaat het matchen met de expressie wel goed, de eerste keer dat
je een link klikt geeft ie keurig de variabelen weer.
Het gaat pas fout als je daarna een andere link klikt (zie
http://willem.lowi.nl/modtest2var/).

SF
02/11/05, 13:12
"willem" <loki_142@hotmail.com> schreef in bericht
news:3318a$43620a2d$54697374$22206@cache40.multika bel.net...
> Volgens mij gaat het matchen met de expressie wel goed, de eerste keer dat
> je een link klikt geeft ie keurig de variabelen weer.
> Het gaat pas fout als je daarna een andere link klikt (zie
> http://willem.lowi.nl/modtest2var/).
>

ja hij vervangt jassen niet door truien cq schoenen, maar het getal erachter
SF

Eric B. Bednarz
02/11/05, 13:12
"willem" <loki_142@hotmail.com> writes:

> "Eric B. Bednarz" <bednarz@fahr-zur-hoelle.org> schreef...

>> Jij doet in zekere zin iets 'fout' met e1n '/' want je gebruikt
>> relatieve URI referenties; jij zit in de URI hierarchie met meerdere
>> variabelen zodoende dus vervolgens op een verkeerd niveau (de eerste
>> keer gaat het dan ook goed); cf.
>>
>> <http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritebase>

> RewriteBase /modtest2var/

Ik was ietwat onduidelijk, in eerste instantie heb je een HTML probleem,
jouw links moeten met een absoluut pad beginnen

href="/modtest2var/

anders plakt een browser de losse pad componente gewoon achteraan.

(voor de rest is het meestal een goede zaak zo specifiek mogelijk te
zijn, maar dat was meer aanvullende informatie)


--
hexadecimal EBB
decimal 3771
octal 7273
binary 111010111011

willem
02/11/05, 13:12
"Eric B. Bednarz" <bednarz@fahr-zur-hoelle.org> schreef in bericht
news:m3vezgquxh.fsf@nntp.bednarz.nl...
> "willem" <loki_142@hotmail.com> writes:
>
>> "Eric B. Bednarz" <bednarz@fahr-zur-hoelle.org> schreef...
>
>>> Jij doet in zekere zin iets 'fout' met e1n '/' want je gebruikt
>>> relatieve URI referenties; jij zit in de URI hierarchie met meerdere
>>> variabelen zodoende dus vervolgens op een verkeerd niveau (de eerste
>>> keer gaat het dan ook goed); cf.
>>>
>>> <http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritebase>
>
>> RewriteBase /modtest2var/
>
> Ik was ietwat onduidelijk, in eerste instantie heb je een HTML probleem,
> jouw links moeten met een absoluut pad beginnen
>
> href="/modtest2var/
>
> anders plakt een browser de losse pad componente gewoon achteraan.
>
> (voor de rest is het meestal een goede zaak zo specifiek mogelijk te
> zijn, maar dat was meer aanvullende informatie)

Het werkt, bedankt voor je hulp!