[Apache][mod_rewrite] redirect op basis van parameter

Pagina: 1
Acties:

  • mayhem
  • Registratie: September 2000
  • Laatst online: 29-07 10:37

mayhem

_______________

Topicstarter
Ik probeer hetvolgende:
de url : http://www.domein.com/redir?appl=test&par1=one&..

moet resulteren in een rewrite naar
http://www.domein.com/servlet/test?par1=one&..

de appl parameter heeft als waarde de naam van de classname van de servlet.
de overige parameters moeten meegegeven worden aan de servlet.

ik kom er niet helemaal uit met rewrite onder apache.
redirecten lukt wel, maar die parameters parsen en gebruiken als targetURL lukt niet.

_______________


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

en je hebt al geprobeerd ....?
en het lukt niet want ...? :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • mayhem
  • Registratie: September 2000
  • Laatst online: 29-07 10:37

mayhem

_______________

Topicstarter
nou ik zit op dit moment vast bij:
code:
1
RewriteRule ^/redir?(.*)$ /servlet/test$1 [PT]

de rewrite gaat goed, en ook de parameters kan ik in de servlet oppakken.
maar ik kan er niet achter komen hoe ik een deel van de parameters moet "parsen", zodat ik kan kijken wat de waarde is van de appl= parameter.

_______________


  • mayhem
  • Registratie: September 2000
  • Laatst online: 29-07 10:37

mayhem

_______________

Topicstarter
...subtiele kick omhoog....

_______________


  • mayhem
  • Registratie: September 2000
  • Laatst online: 29-07 10:37

mayhem

_______________

Topicstarter
nou ik ga het nog maar es proberen, ik heb wel vooruitgang geboekt maar ik krijg een deel van de QUERY_STRING niet mee naar de nieuwe URL.
Ik heb nu dit:

code:
1
2
RewriteCond  %{QUERY_STRING}  appl=Retrieve&(.*)$
RewriteRule ^/redirect\.cgi$  /servlet/Retrieval?$1 [L,R,NE]


Maar ik krijg dus nu een redirect naar /servlet/Retrieval zonder parameters, dus het laatste deel van de QUERY_STRING wordt niet opgepakt.
Ziet iemand hier de fout die ik maak ?

_______________


  • mayhem
  • Registratie: September 2000
  • Laatst online: 29-07 10:37

mayhem

_______________

Topicstarter
nou gevonden hoor... klein detail, ipv $1, %1 gebruiken, dat koppelt de rule aan de condition.
code:
1
2
RewriteCond  %{QUERY_STRING}  appl=Retrieve&(.*)$
RewriteRule ^/redirect\.cgi$  /servlet/Retrieval?%1 [L,R,NE]

_______________


  • sjon.
  • Registratie: November 2002
  • Laatst online: 14-01-2024
in rewritecond kan je ook een expressie gebruiken...
code:
1
2
RewriteCond %{QUERY_STRING} ^app=([a-z]+)&(.*)$
RewriteRule ^/redirect.cgi$ /servlet/%1?%2 [R,L]


sjon.

  • mayhem
  • Registratie: September 2000
  • Laatst online: 29-07 10:37

mayhem

_______________

Topicstarter
Dat zou inderdaad nog makkelijker zijn, thanx !

_______________

Pagina: 1