plainblack.com
Username Password
search
Bookmark and Share
Remove gateway URL  (#11751)
Issue

The gateway URL was needed due to how we used the Apache phases, but with Plack it isn't needed.  If WebGUI is mounted on a sub-url, Plack::Request will give you a URI object for the full base URI in $request->base.  That should be able to be used to calculate the URLs to generate, and any gateway processing for incoming URLs could just be removed.

Solution Summary
Comments
preaction
0
12/9/2010 6:25 pm
So we keep "gatewayUrl" in the config file, but we use that to mount WebGUI at a specific URL and use $request->base to make URLs for output in the Session::URL module.

Hm.. looks like gatewayUrl isn't yet done inside app.psgi nor site.psgi.

Should I only put it in app.psgi? That seems more sane, site.psgi is for running a single site, app.psgi is for running the whole server (so two sites may have same sitename and different gatewayUrls).

And now it just seems like sitename/gatewayUrl is a horrible way to say what this site should respond to. Specifying full mountpoints might be better. Then we could take the mountpoint they came in on to make URLs. But this can be done anytime during 8.x.
Graham
0
12/16/2010 1:31 pm
That's basically what I was thinking.  Gateway should be handled by app.psgi and $request->base can be used to construct URLs.
perlDreamer
0
1/4/2011 4:23 pm
Session::Url::gateway does more than construct gateway based URLs, it also appends the preventProxyCache query fragment to it.

I think it makes sense to keep the gateway method, but to gut it and replace it with $request->base, like the bottom of the make_urlmap_work stub in Session::Url
perlDreamer
0
1/13/2011 3:42 pm
Using URI makes things very difficult.  Historically, we've never escaped UTF-8 data.  URI does that automatically.

However, we can't unescape the data selectively, since URI::Escape only allows for selective escaping.   We could do a blankey unescape, and then re-escape, but that just seems silly.

This is implemented, but it should be revisited.
Details
Ticket Status Resolved  
Rating0.0 
Submitted By Graham  
Date Submitted2010-07-28 
Assigned To unassigned  
Date Assigned 2019-07-20  
Assigned By  
Priority Blocking/Required  
Milestone Feature/API Freeze  
URLcommunity/webgui-8/issues/11751
Keywords
Ticket History
1/13/2011
9:42 PM
Resolved perlDreamer
12/16/2010
7:31 PM
Pending Graham
12/10/2010
12:25 AM
Feedback Requested DBell
7/28/2010
10:21 PM
Ticket created Graham
© 2019 Plain Black Corporation | All Rights Reserved