Fusion reactor with URL Rewriting enabled

100 views
Skip to first unread message

Jonathan Smith

unread,
Jul 18, 2013, 2:48:08 PM7/18/13
to fusion...@googlegroups.com
Hi,

Perhaps this is a feature request, but:

My production site is using url rewriting, so the actual url is resolved into the cgi.path_info or xajp-path-info variables, which means every request shows as /index.cfm or /rewrite.cfm

I can always click in to look at the request headers to see what the actual request was, however, it means I mostly only see these two as page requests; this is especially troublesome in reviewing log files.

Is there a setting, or better way for me to be doing this?

David Stockton

unread,
Jul 19, 2013, 12:04:09 PM7/19/13
to fusion...@googlegroups.com
Hello Jonathan,

Thanks for your email. This largely depends on how you're doing the rewrite. If you're doing the re-write long before the application server see the URL (eg in IIS/Apache) then there's not much we can do at this point. If you're using a JEE tool (eg Tuckey) to do the rewrite then changing the order of the servlet filters should help you.
I believe FusionReactor v5 will help you in this situation but that will be our next release and is not yet available so I can't confirm specific features will be included - but I'd recommend when it is released (in the near future) you try it to see if it solves your issue.
However, I have also logged a new feature request with details of this for our team to review (FR-3663).

Best regards,
David Stockton
Fusion Team



--
You received this message because you are subscribed to the Google Groups "FusionReactor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fusionreacto...@googlegroups.com.
To post to this group, send email to fusion...@googlegroups.com.
Visit this group at http://groups.google.com/group/fusionreactor.
For more options, visit https://groups.google.com/groups/opt_out.



Jonathan Smith

unread,
Jul 19, 2013, 4:34:05 PM7/19/13
to fusion...@googlegroups.com
Hi,

I'm rewriting with IIS Url Rewrite 2.0, not at the tomcat stage, and for future reference the application in question is running the cfwheels framework.

Scott Faller

unread,
Aug 13, 2013, 4:16:35 PM8/13/13
to fusion...@googlegroups.com
Hi David,

Was FR-3663 (feature request you mentioned above) included in the v5 release? I do not see any documentation how to configure a re-writer tool like Tuckey.

I was looking here for help:

http://docs.intergral.com/display/FR50/Home

Thoughts?
Scott

David Stockton

unread,
Aug 14, 2013, 6:17:17 AM8/14/13
to fusion...@googlegroups.com
Hello Scott,

Thank you for your message. This feature was not released with FR 5.0 though we are still tracking it for potential inclusion in a future release.

Best regards,
David Stockton


Jonathan Smith

unread,
Aug 3, 2014, 4:09:15 PM8/3/14
to fusion...@googlegroups.com
I talked with the team at fusion reactor, and some other FR users at cfobjective 2014, and they seemed to think that I should be able to see the rewritten url string in fusion reactor ( Using Railo 4.x and FR 5 ).

Can someone suggest a url rewritten setup of any kind with tomcat + railo & FR where the requested rewritten url shows up properly in FR ?

Charlie Arehart

unread,
Aug 4, 2014, 3:27:07 PM8/4/14
to fusion...@googlegroups.com
@Jonathan, I don't know for sure at all. Have not seen the problem myself, but I have a guess if no one else has any response for you.

I wouldn't think the answer is in FR. I's expect it's just reporting what's been passed to Railo (or CF or whatever one is using for an app server that FR is monitoring). So let's look at what goes on before the request gets to FR.

First, what's the web server? Apache or IIS? Second, what's the rewrite solution you're using? Either of those may have a configurable option that affects what they cause to be passed from the web server to the next step in the process.

Second, since you're on Railo, I'll assume you're on Tomcat. I wonder if there could be a configuration feature within there that may affect this.

Hope that's helpful.

/charlie
--
You received this message because you are subscribed to the Google Groups "FusionReactor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fusionreacto...@googlegroups.com.
To post to this group, send email to fusion...@googlegroups.com.
Visit this group at http://groups.google.com/group/fusionreactor.
For more options, visit https://groups.google.com/d/optout.

Jonathan Smith

unread,
Aug 8, 2014, 3:18:00 PM8/8/14
to fusion...@googlegroups.com
Hi,

Our setup is IIS 7, Railo 4.2, IIS URLRewrite 2.0, and FR 5. ( With an out-of-the-box-tomcat that ships with Railo :-)

In request history --> URL column i get: https://www.domainName.com/rewrite.cfm  (with any "? get value-pairs" that may be there if applicable, but not the "original request url" .. as per below )

FR is showing the url-rewritten but, only when I go to:  

Requests Button --> History
1) Details --> headers --> path-info  ( The actually requested url: /rewrite.cfm/controller/action/someActionName )
2) Details --> headers --> X-Original-URL ( Just the original request params: /controller/action/someActionName )
3) Details --> headers --> referer ( Fully qualified browsers request url of previous request: ie. https://www.domainName.com/controller/action/someOtherActionName)
4) Details --> headers --> xajp-path-info ( Just the original request params: /controller/action/someActionName )

Charlie Arehart

unread,
Aug 10, 2014, 6:48:52 PM8/10/14
to fusion...@googlegroups.com

Jonathan, since you refer to xafp-path-info appearing, I think that may be coming from the boncode connector (the IIS connector for Tomcat that was created by Bilal Soylu and is often used with Railo rather than the native Tomcat connector). If so, I wonder if that’s playing a part here and if perhaps something in its configuration can help you. Have you talked to either him or others on that or the Railo team?

I know you’re asking here on the FR list because you’re finding it’s an issue for you in FR, and I appreciate that you’ll really want an answer from someone on the Intergral engineering team. I hope they may chime in here.

But while you wait, I was wondering if this may help you get somewhere. Also, I’m curious: what do you see if you do a dump of the CGI scope? I’d not be surprised if the boncode connector might pass in something that would appear there (integrated as it is with CFML engines like Railo and CF) which maybe would not appear the same in the headers. Just a wild guess. Again, asking in case you may share something that would give a clue on the FR side.

Hope that helps.

/charlie

From: fusion...@googlegroups.com [mailto:fusion...@googlegroups.com] On Behalf Of Jonathan Smith
Sent: Friday, August 08, 2014 3:18 PM
To: fusion...@googlegroups.com
Subject: Re: [fusionreactor] Fusion reactor with URL Rewriting enabled

 

Hi,

Darren Pywell

unread,
Aug 11, 2014, 8:21:20 PM8/11/14
to fusion...@googlegroups.com
Hi Jonathan,

At the moment I think that you can only see the original URL in FR by looking at the request details. I think that this is probably what the guys at cfobjective meant when they said you can see the original url.

David tracked a ticket for this feature but it didn't make it into FR5. I'll look at getting it into FR6. I'm assuming that you would want the URL of the WebRequest replaced with the contents of a header, e.g. X-Original-URL  or referer

As a workaround you could use the following code snippet to set the URL inside your own code. 

<cftry>
   <cfscript>
       aih   = createObject("java", "com.intergral.apm.transit.api.hook.AgentImplementationHook");
       aih.getTransit().getActiveMasterTransaction().setUrl(cgi.path_info);
   </cfscript>
   <cfcatch/>
</cftry>

The code above uses an undocumented APIs and not the FusionReactor API (FRAPI) so I can't make any promises that it will be available in future versions or won't change otherwise.

Hope that helps,
Darren

Jonathan Smith

unread,
Aug 13, 2014, 10:44:58 AM8/13/14
to fusion...@googlegroups.com
Hi,

Yes, swapping out the URL of the web-request with header values (such as 'script_name' +  'path-info' ) would work,

or

Replace the 2nd line of the Request-History URL row ( currently the 'get' params ) with the value of the 'X-Original-URL' header if it is populated (In my case,X-Original-URL contains the rewritten request + get params )

I guess the hard part is checking if these headers contain similar values across server platforms.

Charlie Arehart

unread,
Aug 13, 2014, 5:05:30 PM8/13/14
to fusion...@googlegroups.com

Speaking of this: Darren, might this be something that someday you may add support for, just as the current request settings>proxy feature lets us change FR to use a different header to get the “real” ip address for a client in an environment where a load balancer or proxy would change it? Or is this need of support for rewritten URLs either a lot less frequent or a lot less standardized in terms of headers that would do the job? Or is it more complicated than this?

Asking on the list here in case the topic may interest others reading along.

 

/charlie

 

From: fusion...@googlegroups.com [mailto:fusion...@googlegroups.com] On Behalf Of Jonathan Smith
Sent: Wednesday, August 13, 2014 10:45 AM
To: fusion...@googlegroups.com
Subject: Re: [fusionreactor] Fusion reactor with URL Rewriting enabled

 

Hi,

Darren Pywell

unread,
Aug 14, 2014, 10:52:59 AM8/14/14
to fusion...@googlegroups.com
Charlie,

David Stockton tracked a ticket for this (FR-3663). I've added this to the FR6 release candidates. That's not a guarantee that it will make it but a good step closer.

Darren
Reply all
Reply to author
Forward
0 new messages