On Tue, Sep 22, 2009 at 12:21 AM, Graham Dumpleton <span dir="ltr">&lt;<a href="mailto:graham.dumpleton@gmail.com">graham.dumpleton@gmail.com</a>&gt;</span> wrote:<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

That may be fine for pure Python web servers where you control the<br>
split of REQUEST_URI into SCRIPT_NAME and PATH_INFO in the first place<br>
but don&#39;t have that luxury in Apache or via FASTCGI/SCGI/CGI etc as<br>
that is done by the web server. Also, as pointed out in my blog,<br>
because of rewrites in web server, it may be difficult to try and map<br>
SCRIPT_NAME and PATH_INFO back into REQUEST_URI provided to try and<br>
reclaim original characters. There is also the problem that often<br>
FASTCGI totally stuffs up SCRIPT_NAME/PATH_INFO split anyway and<br>
manual overrides needed to tweak them. </blockquote></div><div><br></div>When things get messed up I recommend people use a middleware (paste.deploy.config.PrefixMiddleware, though I don&#39;t really care what they use) to fix up the request to be correct.  Pulling it from REQUEST_URI would be fine.<div>

<br></div><div>Also, at worst, you can do environ[&#39;SCRIPT_NAME_RAW&#39;] = urllib.quote(environ.pop(&#39;SCRIPT_NAME&#39;)).  It sucks, but if that&#39;s all the information you have, then that&#39;s all the information you have.  Or try to get the information from REQUEST_URI the hard way, once at the gateway level.<br clear="all">

<br>-- <br>Ian Bicking  |  <a href="http://blog.ianbicking.org">http://blog.ianbicking.org</a>  |  <a href="http://topplabs.org/civichacker">http://topplabs.org/civichacker</a><br>
</div>