Welcome to ISAserver.org
Forums |
Register |
Login |
My Profile |
Inbox |
RSS
|
My Subscription |
My Forums |
Address Book |
Member List |
Search |
FAQ |
Ticket List |
Log Out
Link Translation of Site-relative References
|
Users viewing this topic:
none
|
Logged in as: Guest
|
Login | |
|
Link Translation of Site-relative References - 6.Oct.2008 4:32:49 PM
|
|
|
bdawk
Posts: 2
Joined: 6.Oct.2008
Status: offline
|
I'm trying to publish a number of internal web sites to a single external IP/FQDN on the ISA server. The external view of the sites are to be distinguishable by a directory name. Such as: www.external.com/aaa/ <--> alpha.internal.com/ www.external.com/bbb/ <--> bravo.internal.com/ www.external.com/ccc/ <--> charlie.internal.com/ Link translation is apparently having trouble when it encounters a site-relative link. There are no problems with page-relative or "fully qualified" links. There are also no problems if publishing a single site with no leading directory. I'm hoping that this is a brain cramp on my part, but if it is, I just don't see it. As a simplified example, consider a web site on alpha.internal.com with the following structure: /index.htm /page01.htm /pages/page11.htm /pages/page12.htm /images/bg/bg1.gif /images/bg/bg2.gif /images/pic/pic1.gif /images/pic/pic2.gif If page01.htm contains the following three references: <img src="/images/pic/pic1.gif"> (site-relative) <img src="images/pic/pic1.gif"> (page-relative) <img src="http://alpha.internal.com/images/pic/pic1.gif"> (fully qualified) Browsing http://www.external.com/aaa/page01.htm displays two images and one red x. Viewing the source of the resulting external page shows that the link translation worked fine for the relative and the fully qualified references, but dropped the path component for the site-relative reference. http://www.external.com/images/bg/bg1.gif <--> /images/bg/bg1.gif http://www.external.com/aaa/images/bg/bg1.gif <--> images/bg/bg1.gif http://www.external.com/aaa/images/bg/bg1.gif <--> http://alpha.internal.com/images/bg/bg1.gif ISA blocks the GET without the "/aaa" with 12202 The ISA Server denied the specified URL, which makes sense. I'm using ISA Server 2006 EE, with SP1 applied in a single-array, two-server configuration. The web publishing rule for this example is as follows: From: External To: alpha.internal.com (requests come from ISA server) Public Name: www.external.com External Path: /aaa/* Internal Path: /* Link Translation is enabled, no user-defined rules Bridging: HTTP to port 80 Listener: HTTP to port 80 with no authentication So, how do I get link translation to work for pages with site-relative references? For extra credit, can anyone explain why it's acting like this. The example above is a very simplified view of what I need to do and a little theory would go a long way. Thanks in advance for the help.
_____________________________
- Jim
|
|
|
|
RE: Link Translation of Site-relative References - 6.Oct.2008 7:44:10 PM
|
|
|
joseph.a.paradi
Posts: 29
Joined: 20.Jun.2004
Status: offline
|
Unfortunately for you, this is working by design. When publishing a web site behind ISA where you are going to change the pathing, the developer needs to only use page relative links and not site relative links. There is no way for ISA to understand the site relative link because it would be totally valid for another publishing rule to publish the /images directory and then it would be impossible for ISA to know which rule applies. I know this through experience because I write the code and manage the ISA server in my environment. :) Joseph
|
|
|
|
RE: Link Translation of Site-relative References - 8.Oct.2008 1:51:38 PM
|
|
|
bdawk
Posts: 2
Joined: 6.Oct.2008
Status: offline
|
Joseph, Thanks for your quick response. Your answer matches closely to what I've been seeing, but I知 not ready to give up just yet. It would seem to be a serious deficiency with the product if it can稚 do this. (I believe the Apache mod_proxy_http module handles it.) The use of site-relative paths is a common practice, and in my opinion, the better way to go when designing complex sites. In addition, changing all of our sites to conform to this limitation is just not an option. If I can稚 get this to work then I値l need to find another way to publish the sites. So, I知 still holding on to the thought that I知 missing something. With that said, I did have some success this morning on a small test site after some careful crafting of the web publishing rules. I知 about to test the theory on a much more complex site. I値l let you know how I make out.
|
|
|
|
RE: Link Translation of Site-relative References - 8.Oct.2008 9:39:48 PM
|
|
|
joseph.a.paradi
Posts: 29
Joined: 20.Jun.2004
Status: offline
|
I think the difference here is between the way an application works within its own context and the way the ISA reverse proxy works. Because the ISA reverse proxy has to be able to absolutely determine how to handle a given path, it can't handle something like multiple overlapping url path rewrites without knowing for sure which rule it matches. If the option exists for you to do the url rewriting on the application server itself, then that would give you the option for the application server to present the path to ISA in the way that ISA could know for sure that it will route the traffic to the right place. With your example below, the challenge is that the browser client will make a request to the ISA server for www.external.com/images/pic/pic1.gif and the ISA server will have no idea where that request came from since HTTP is stateless. So unless ISA has a rule for the /images path that directs it to one and only one destination, it could not possibly figure out which underlying site to send that request to. Hope that helps and/or makes sense, Joseph
|
|
|
|
New Messages |
No New Messages |
Hot Topic w/ New Messages |
Hot Topic w/o New Messages |
Locked w/ New Messages |
Locked w/o New Messages |
|
Post New Thread
Reply to Message
Post New Poll
Submit Vote
Delete My Own Post
Delete My Own Thread
Rate Posts |
|