Eli Barzilay wrote at 02/08/2011 11:51 AM:
[...] It looks like in recent versions of apache (2.2.17) when rewrite rules are applied the URIs will always 
get escaped.  This leads to problems with the racket server's urls -- something like 
"servlets;blah" gets substituted as "servlets%3Bblah", which means that the ";" 
lost its [...]

Looks like there's been a standards change, and you might want to change the Racket Web Server...

I'm not sure what happened, but RFC 2396 used to give special meaning to semicolon (denoting parameters on path segments in hierarchical URIs), but that was obsoleted by RFC 3986, which seemed to remove the special meaning.

I've never seen anyone use semicolons in the RFC 2396 intended way in practice. The PLT Web Server and a couple of other frameworks use them only on the last path segment (in RFC 2396 interpretation).

In light of the interpretation of RFC 3986, perhaps the Racket Web Server should resort to parsing the ";" out of the last path segment, after unescaping. Alternatively, stop using semicolon, and put the information in an (HTML form GET-like) name-value query parameter of the HTTP URL instead.

There might be newer specs I'm not aware of. I last implemented RFC 2396, and actually had robust and efficient support for semicolon as they wanted it at the time. :)

--
http://www.neilvandyke.org/
_________________________________________________
 For list-related administrative tasks:
 http://lists.racket-lang.org/listinfo/users

Reply via email to