URL variabele doorgeven in apache server side includes

Pagina: 1
Acties:

  • halfgaar
  • Registratie: November 2002
  • Laatst online: 02-11-2025
Ik roep als volgt een server side include aan:

code:
1
<!--#include virtual="/inc/ie-notice.cgi?http_user_agent=${HTTP_USER_AGENT}"-->


het probleem is, dat die HTTP_USER_AGENT puntkomma's ( ; ) bevat, en die worden niet goed doorgegeven. Ik krijg het tot de eerste puntkomma, bijvoorbeeld: "Mozilla/5.0 (X11".

Hoe kan je die variabele goed encoderen in een #include aanroep? De enige statement met een encode optie die ik kan zien, is echo, en daar heb ik niets aan.

  • Yo-han
  • Registratie: December 2001
  • Laatst online: 02-10-2025

Yo-han

nope.

include virtuale encode normaal je url wel, maar omdat je een variabel gebruikt dat, waarschijnlijk, pas later wordt toegevoegd werkt het niet. Je zou kunnen proberen de url in een variabel op te slaan en deze tussen je virtual te plakken als url?

Just a thought...

  • halfgaar
  • Registratie: November 2002
  • Laatst online: 02-11-2025
Ik heb nu:

code:
1
2
3
<!--#set var="agent" value="$HTTP_USER_AGENT"-->
<!--#echo var=agent -->
<!--#include virtual="/inc/ie-notice.cgi?http_user_agent=$AGENT"-->


En het geeft geen verschil, behalve dan dat die echo regel erbij staat. De CGI script krijgt nog steeds alleen maar tot de eerste puntkomma.

  • moozzuzz
  • Registratie: Januari 2005
  • Niet online
Kan je de variable niet tussen ' zetten?[code=html]
<!--#include virtual="/inc/ie-notice.cgi?http_user_agent='${HTTP_USER_AGENT}'"-->
<!--#include virtual='/inc/ie-notice.cgi?http_user_agent='+${HTTP_USER_AGENT}-->
<!--#include virtual="/inc/ie-notice.cgi?http_user_agent="+${HTTP_USER_AGENT}-->
[/code]

Opm. Ik ken niets van SSI, dus die + moet er mss niet staan hoor.

[ Voor 57% gewijzigd door moozzuzz op 16-08-2006 17:19 . Reden: veel stupiditeit tesamen ]


  • halfgaar
  • Registratie: November 2002
  • Laatst online: 02-11-2025
Ik heb het maar opgelost door de checks waar ik die variabele voor nodig had in SSI te doen, ipv de cgi script. Het was toch maar weinig.