Вход

Просмотр полной версии : Возможно ли чтоб страница открываемая в Iframe НЕ ПОЛУЧАЛА реферер ?


deanisa
07.06.2012, 16:18
О гуру JavaScript , к Вам обращаюсь я
если не сложно, помогите начинающей програмистке :help:

что требуется -

есть HTML файл

в нем Ифрейм, в ифрейме, соответственно, при обращении браузера к первому, тоже загружается HTML файл

Возможно ли сделать так, чтоб HTML страница открываемая в Iframe НЕ ПОЛУЧАЛА в качестве реферера ТОГО, с кем она открывается,

мож как то по другому вообще это реализовать ?

а в идеале - чтоб можно было вместо настоящего реферера подставить в качестве реферера любой другой, хоть google например ?

просьба сильно не пинать, если чего не так спросила
ибо - ньюбы мы дремучие ... :cray:

Deff
07.06.2012, 16:24
ифрейме, соответственно, при обращении браузера к первому, тоже загружается HTML файл
Фраза не оч понятна..
Что и откуда и какая команда
Из главного Окна или фрейма..
Вид указания, или деяния, которое меняет сейчас контент в iframe
Что при этом происходит на главной

deanisa
07.06.2012, 18:13
Фраза не оч понятна..
Что и откуда и какая команда
Из главного Окна или фрейма..
Вид указания, или деяния, которое меняет сейчас контент в iframe
Что при этом происходит на главной

попробую просто показать,
есть index.html, он содержит -



<html>
<head>
<title></title>
</head>

<body>


<iframe src ="target.html" width="10" height="20" scrolling="0"</iframe>


</body>
</html>



к нему обращается браузер по УРЛ, ну там, ненаю,
допустим http://www.vasia.ru

при обращению браузера к index.html, соответственно одновременно с ним в браузер загружается и target.html который в ифрейме.

если в target.html вставить любой счетчик, ну типа StatCounter, Liveinternet и т.п., то в статистике реферером у target.html всгда будет УРЛ - http://www.vasia.ru, где лежит index.html в котором прописан ифрейм.

вопрос - можно ли как то что то сделать, чтоб target.html НЕ ПОЛУЧАЛ реферером http://www.vasia.ru, а в идеале, чтоб можно было бы этот реальный УРЛ заменить на любой другой, на http://www.petia.ru например ...

B@rmaley.e><e
07.06.2012, 18:34
Нет, нельзя.

Можно завести "локальный прокси", который будет подгружать желаемую страничку, постав ему нужный реферер, но это будет не загрузка другого сайта во фрейме, а загрузка своей странички с содержимым другого сайта.

Deff
07.06.2012, 18:42
target.html
Данный фрейм имплантировать в другой фрейм в котором мы сами устанавливаем адрес скриптом

deanisa
09.06.2012, 13:35
Спасибо всем кто откликнулся

Данный фрейм имплантировать в другой фрейм в котором мы сами устанавливаем адрес скриптом

уважаемый Deff
если возможно, дайте пример HTML и JavaScript

спасибо заранее,
ну такие вот мы индусы ...
без примера пока никак :)

Deff
09.06.2012, 14:10
jQuery
<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>
<!--Пустой Iframe-->
<iframe id='ChangeAddr' src ="" width="10" height="20" scrolling="0"</iframe>'
<script>
var IFRAME='<iframe src ="target.html" width="10" height="20" scrolling="0"</iframe>'
//1.Выставляем фрейму-обрамлению произвольный Адрес(с нашего домена)
var NewAdr='../My_Page/';
$('#ChangeAddr').attr("src",NewAdr)
//2.Имплантируем внутрь фрейм счетчика
$('#ChangeAddr').contents().find("body").append(IFRAME);
</script>

deanisa
20.06.2012, 21:26
Уважаемый DEFF

спасибо за Ваш ответ
но только у меня чего то не получается ...

я поместила Ваш скрипт следующим образом -

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title> </title>
</head>
<body>

<script type="text/javascript" src="http://yandex.st/jquery/1.4.4/jquery.min.js"></script>

<!--Пустой Iframe-->

<iframe id='ChangeAddr' src ="" width="100" height="200" scrolling="0"</iframe>

<script>
var IFRAME='<iframe src ="http://www.domen.org/" width="100" height="200" scrolling="0"</iframe>'
//1.Выставляем фрейму-обрамлению произвольный Адрес (с нашего домена)
var NewAdr='../My_Page/';
$('#ChangeAddr').attr("src",NewAdr)
//2.Имплантируем внутрь фрейм счетчика
$('#ChangeAddr').contents().find("body").append(IFRAME);
</script>

</body>
</html>

сразу скажите, правильно или нет ?

и мне совсем не понятно фраза -
Выставляем фрейму-обрамлению произвольный Адрес (с нашего домена)

если можно, пример , как для индусов ... :)

еще раз приношу извинения за свою навязчивость и тормознутость
спасибо

Deff
20.06.2012, 22:38
deanisa,
Да на вид вродь всё так - а чо - сложно проверить ?
Если траблы - дайте ссылку на тестовую страницу, посколь счетчики обычно привязаны к доменам

melky
20.06.2012, 22:43
Данный фрейм имплантировать в другой фрейм в котором мы сами устанавливаем адрес скриптом

не видно ответа. как говорится, ЧЯДНТ?


<iframe src="about:blank" id="a"></iframe>

<script>
document.getElementById("a").onload = function(){
this.contentDocument.body.innerHTML = '<iframe src="http://www.google.ru"></iframe>';
}
</script>

Deff
20.06.2012, 23:06
<iframe src="http://lookatcode.com/showhtml/" id="a"></iframe>

<script>
document.getElementById("a").onload = function(){
this.contentDocument.body.innerHTML = '<iframe src="http://www.google.ru"></iframe>';
}
</script>

Deff
20.06.2012, 23:06
melky,
Выставляемый Адрес безымянного должен быть существующим

melky
21.06.2012, 00:58
melky,
Выставляемый Адрес безымянного должен быть существующим
ваш код не работает в FF.

Deff
21.06.2012, 01:04
melky,
В консоли видно, что фрейм от гугла есть

<iframe src="http://lookatcode.com/showhtml/" id="a"></iframe>

<script>
document.getElementById("a").onload = function(){
this.contentDocument.body.innerHTML = '<iframe src="http://javascript.ru/forum/library-toolkit-framework/28930-vozmozhno-li-chtob-stranica-otkryvaemaya-v-iframe-ne-poluchala-referer-2.html#post182885"></iframe>';
}
</script>

melky
21.06.2012, 01:06
В консоли видно, что фрейм от гугла есть
cначала не было видно, через 15 минут посмотрел ещё раз - стало видно. хз, что это было :)

но у вас тоже ответ не показывается.


PS about:blank разве не является валидным адресом?

Deff
21.06.2012, 01:14
cначала не было видно, через 15 минут посмотрел ещё раз - стало видно. хз, что это был
Возможно для FF нун закидывать пустой фрейм - а затем в нем менять адрес (возможно скриптом из фрейма(Думаю с безопасностью как то связанао (по наводке на область фрейма и клике правой - он его открывает на новой странице или вкладке

Я делал множественное вложенние фреймов с последним iframe не с текущего домена

Метод был такой - закидывал фрейм с текущего домена, добавляя к адресу некий хеш #a1, в зависимости от хеша очередной фрейм создавал внутри себя новый с таким же адресом - либо адресом другого домена

deanisa
21.06.2012, 14:43
deanisa,
Да на вид вродь всё так - а чо - сложно проверить ?
Если траблы - дайте ссылку на тестовую страницу, посколь счетчики обычно привязаны к доменам


тестовую страница -
http://www.pixfree.net/

подгружаемый фрейм со счетчиком -
http://www.newonly.org/

при обращении к pixfree.net -

в ИЕ поодгружается фрейм с гуглом но со счетчиком - нет
в FF ничего не подгружается, на секунду только мелькает вроде и всё...

Deff
21.06.2012, 14:48
deanisa,
Нун изворачивацо
Подгружать во фрейм фрейм со своей страницей - ставить ему
хеш #change ( если хеш есть,скрипт страницы(внутри последнего фрейма) меняет собственный адрес на адрес счетчика

deanisa
21.06.2012, 14:53
Deff,

простите, не понимаю :-(

можно полностью хтмл и скрипт в качестве примера

спасибо

Deff
21.06.2012, 15:39
Вам нужно на страницу, засовываемую в последний фрейм, поставить такой скрипт


<script>
var hash = window.location.hash;
if(hash=="#change") {
window.location="http://yandex.ru/"; //Тут адрес Вашего счечика
}
</script>



а код засовывания измениться на подобный
<iframe src="http://lookatcode.com/showhtml/" id="a"></iframe>

<script>
document.getElementById("a").onload = function(){
this.contentDocument.body.innerHTML = '<iframe src="http://lookatcode.com/showhtml/#change"></iframe>';
}
</script>
http://lookatcode.com/showhtml/ - меняем на произвольные свои адреса, со своего сайта

deanisa
21.06.2012, 16:53
Deff,

Не получается
видимо всё же что то делаю не так.

попробую по шагово -

1 по урл http://www.newonly.org/ есть HTML файл со счетчиком, к его коду доступа нет.

2 создаем HTML файл со следующим кодом -

<html>
<head>
<title>frame</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<script>
var hash = window.location.hash;
if(hash=="#change") {
window.location="http://www.newonly.org/"; //Поместили сюда урл файла со счетчиком
}
</script>

</head>

<body>


</body>
</html>

заливаем этот файл по адресу http://www.wasia.ru/ он будет использоваться в качестве
ифрейма.

3 создаем HTML файл со следующим кодом -

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>test</title>

<script>
document.getElementById("a").onload = function(){
this.contentDocument.body.innerHTML = '<iframe src="http://www.wasia.ru/#change"></iframe>';
}
</script>

</head>
<body>

<iframe id="a" src="http://www.wasia.ru/" width="800" height="600"></iframe>

</body>
</html>

заливаем этот файл по адресу http://www.petia.ru/,
и теперь у нас при обращении к http://www.petia.ru/ реферер должен менятся на http://www.wasia.ru/ ?

Правильно ли я всё сделала ?
скрипты в HTML вставлены корректно ?

очевидно всё же что то не так, потому что , к сожалению, не срабатывает :cray:

Deff
21.06.2012, 17:02
deanisa,
Не так

deanisa
21.06.2012, 17:09
Deff,

покоцано

Deff
21.06.2012, 17:20
Карочь у мну они не кажут - Вот проще и без скриптов

На страницу с петей ставите фрейм со счетчиком
фрейм с петей на нужную Свою главную (Но не факт, что боты отследят счетчик, счетчик, по идее считать будет