> Phillip J. Eby ha scritto: > > At 03:22 PM 1/24/2008 +0100, Manlio Perillo wrote: > >> Let's suppose that the request uri is "/example/login/". > >> > >> For the main application, SCRIPT_NAME is "/example". > >> For the application at "/login", SCRIPT_NAME is "/example/login". > >> > >> My problem is that I want, in the page generated by "login" application, > >> return an anchor in the form "/example/logout/". > >> > >> The usual solution is to do environ['SCRIPT_NAME'] + '/logout', but this > >> will return "/example/login/logout/", and not "/example/logout/". > >> > >> This seems to be not possible with the current specifications, since the > >> "original" SCRIPT_NAME is lost. > >> > >> What is the best solution? > >> > >> 1) Do not change SCRIPT_NAME, and instead add a wsgiorg.consumed_path, a > >> list. > >> > >> This means that the request uri recostruction must be changed: > >> SCRIPT_NAME = SCRIPT_NAME + '/'.join(wsgiorg.consumed_path) > >> > >> 2) Store a wsgiorg.original_script_name, with the value seen by the > >> routing application. > >> > >> 3) Simply don't change SCRIPT_NAME and PATH_INFO. > >> However I usually need the updated PATH_INFO. > > > > 4) Use a relative link, with href="logout". > > > > But since the base url is "/example/login/", this relative link is > resolved to "/example/login/logout/".
In that case, use href="../logout/". > Manlio Perillo -- Sven _______________________________________________ Web-SIG mailing list Web-SIG@python.org Web SIG: http://www.python.org/sigs/web-sig Unsubscribe: http://mail.python.org/mailman/options/web-sig/archive%40mail-archive.com