
|
View Full Version : Framing an External Site
JenniH 09-03-2006, 09:05 AM I have hit a sticky problem... I just wondered if anyone had any ideas.
I want to frame an external site on one of my domain names. I am not too worried about the 'framing' aspect, but want my base URL to show in the users browser rather than the target external site's URL.
The problem is that the external site uses a script to check if the content is coming from their own site or not. If the request is coming from outside (eg: me) then they remove all the frames and their site becomes the top one. I need to be able to get around this.
Obviouslty standard framing doesn't work, due to their script. Is there some route through htaccess, or somewhere else, I can use? Remember: all I want is my URL in the browser and not theirs.
Can anyone help?
NOTE: Before anyone takes the wrong end of the stick, and thinks I am stealing copyrighted content, you couldn't be more wrong. This is totally legitmate and agreed with the external site owner, except they don't want to alter their script (thanks a bunch!).
Any ideas?
Windsun 09-03-2006, 02:01 PM Because framing is considered "bad form" (to be nice about it...), many sites have scripts to prevent that.
And yes, we have it also, to keep such things just as you are trying to do from happening.
JenniH 09-05-2006, 07:25 AM I am aware of that, but I have a legitimate and agreed need to bypass this mechanism, if I can find a route to do so. Hence the footnote in my original post.
The problem I am having is finding a method to do it: just to have my URL stay on the browser address bar. There is surely some way of doing this... I just can't find it!
stapel 09-05-2006, 12:57 PM I have a legitimate...need to bypass this mechanism...
Kindly please elaborate: Why do you "need" to present other people's content as your own?
Thank you.
Eliz.
the_pm 09-05-2006, 01:35 PM There is no way around their script, except that anyone with JS turned off will not be affected by it.
Instead of framing up their site, just have them use your URL as a mask. Problem solved (without frames!) :)
JenniH 09-05-2006, 04:09 PM The problem is that our agreement is that we can sell their stuff from our site, and we don't need to 'brand' their site by linking to it directly. They have agreed that the easiest route is just for us to frame (or find some other method) so that their purchase page retains our domain name in the browser.
All well and good... but they are not prepared to do anything to help at their end, or change their scripts. I can understand that, as they would feel they would have to do the same for others, but it doesn't help me much.
I have to find some way of retaining my URL in the browser without any help from them.
That's the bottom line really, but it sounds like it may not be possible. Unless I can come up with a new angle to achieve it.
the_pm 09-05-2006, 04:16 PM I have to find some way of retaining my URL in the browser without any help from them.That's where URL masking comes into play. You specify a URL to mask a site, and it simply takes the place of the original URL, no messing with scripts necessary :)
Framing their site with your URL or using URL masking...how will this allow you to receive recognition for sales if you're just framing up their own sales portal? All you're doing is providing another gateway for them to make sales. If they're going to track this in some way, they're going to have to do some serious scripting. It sounds to me like you're putting together a broken process here :s
Back to their script - if they're willing to make an adjustment that does't affect the functionality, you can add a simple if statement that allows you site to frame them without breaking the frames. You said they are unwilling to alter their scripts, but perhaps that means they're unwilling to stop using them, not necessarily to make a couple tweaks to them? If the answer is completely 'no', then framing their site is a complete non-option. Again, by the sounds of things, I'm not sure you'd be achieving what you wanted even if you could do what you're asking...
JenniH 09-05-2006, 05:24 PM The agreement is that we will generate sales, but not promote their site. Ok, we are bound to promote it a bit, but if our URL (or one we buy) stays in the browser address bar, then at least we will limit that.
It's basically formed around a commercial agreement between our company and theirs. But no, they won't make any changes to their site, but they fully accept the above scenario.
That's where URL masking comes into play. You specify a URL to mask a site, and it simply takes the place of the original URL, no messing with scripts necessary :)
That sounds a very good solution: but is it in our hands rather than theirs? And if so, how would we do it?
the_pm 09-05-2006, 08:01 PM Question: if you frame their site and someone makes a purchase through the framed version, without scripting of some sort, no information will be generated confirming that you are responsible for the sale. How will you receive credit or get paid?
Never mind the masking recommendation. I never bothered to check on the technique used when masking a site before. Apparently, all it does is apply a frame, just like you're attempting to do.
It seems to me you're quite stuck here, unless they're willing to work with you.
JenniH 09-06-2006, 04:24 AM There is a special 'affiliate link' in the URL string (which looks pretty unprofessional, and thus is another reason to retain our URL).
I do feel stuck I must admit. Every avenue seems to run back into frames, which don't work. It's pretty frustrating. I'm not sure where we will go with this now.
cactus 09-06-2006, 08:00 AM Try this:
Restoring Frames and force a web page to appear within a frameset when it uses js to break out of Frames.
---------------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Reframing</title>
<!-- Use JavaScript to determine whether or not this page is being
viewed within a frameset. If it is not, then redirect the
browser to the appropriate frameset.
-->
<script type="text/javascript">
if (window == window.top) window.location.replace("frame3.html");
</script>
</head>
<body>
<h1>Reframing</h1>
<p>This document <em>must</em> appear within a frameset.</p>
</body>
</html>
-----------------------------------------------------------------------------------------
the_pm 09-06-2006, 08:18 AM Have you tried this method before? My guess would be this wouldn't trigger if the frame buster hadn't triggered yet (because window != window.top), and if the frame buster did trigger, wouldn't that eliminate the page containing the script?
If it does work, there's a little sweet irony involved with using XHTML 1.1 to force frames (XHTML 1.1 drops support for frames).
cactus 09-06-2006, 08:59 AM I have not really tested it as it was something that i used to bookmark a site whenever I find something useful regarding js when surfing, also there is another script to counteract the above code using js if it trys to frame it again where it will cause it to continue to open multiple windows until the computer runs out of memory and crashes or hang.
The URL to the site where it has an example of the working code.
http://cs.colgate.edu/~parks/core/147/example/frame1.html
The above as I see it would be useful if you are using URL cloaking and want to retain the site name at the top address bar.
Regards
the_pm 09-06-2006, 09:15 AM I get the impression the code you posted causes an orphaned page to reappear within its original frameset, as opposed to counteracting another script in play. Maybe I'll get off my *** later today and confirm or deny your findings and my theories :)
cactus 09-06-2006, 09:23 AM Please test it as many would want to know how effective it is. I don't have any extra time so count me out.
Regards
JenniH 09-07-2006, 07:39 AM It's a little too techie for me to grasp really :blush:
If anyone could test or confirm the above as a possible route I would be very grateful.
the_pm 09-07-2006, 07:52 AM It's a moot point. Even if you could force a frame around the site, you wouldn't get credit for the visit/sale. I can test it, but knowing if it will override frame busting scripts won't help with your sale :s
JenniH 09-08-2006, 04:39 PM It's a moot point. Even if you could force a frame around the site, you wouldn't get credit for the visit/sale. I can test it, but knowing if it will override frame busting scripts won't help with your sale :s
But if the framed link has my code in it, won't their dbase (or whatever) reflect that? I would call their page into the frame inclusive of the affiliate code.
That seems to be logical... or maybe I have completely lost the plot :)
jerett 09-08-2006, 04:54 PM You mean like using the IFRAME Tag?
JenniH 09-11-2006, 06:57 AM You mean like using the IFRAME Tag?
I'm not sure. I just mean that the page you frame could be something like:
http://www.somewebsite.com/purchase.htm&affiliate=jenni
Hence I would still be credited with the purchase, but their page would still be framed, as needed.
the_pm 09-11-2006, 08:54 AM But if the framed link has my code in it, won't their dbase (or whatever) reflect that? I would call their page into the frame inclusive of the affiliate code.
That seems to be logical... or maybe I have completely lost the plot :)
That actually makes sense. I thought you were framing up their site and looking for how the frame itself would register for you. I saw the part about having an affiliate number, but it didn't register with me this was what you were framing.
Well, it sounds reasonable enough then. But with them framebusting, there still isn't any way you can implement this. They would need to add something to their JS code to detect your URL and prevent framebusting upon detecting your address.
JenniH 09-13-2006, 11:34 AM Ok. At least I have something definitive, even if it isn't what I really want to hear.
Thanks for your help. Appreciated.
Jenni
|