Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как проверить из iframe адрес всего сайта? (https://javascript.ru/forum/events/38353-kak-proverit-iz-iframe-adres-vsego-sajjta.html)

culver 29.05.2013 09:53

Как проверить из iframe адрес всего сайта?
 
Добрый день.
Есть сайт, с которого на другие сайты загружается информация с помощью iframe. Но для каждого из них, загружается своя инфа.
Как проверить из iframe адрес всего сайта?

Deff 29.05.2013 10:20

culver,
Как вариант,
Добавить нижележащим скриптом к имени фрейма, ссылку на текущий сайт и во фрейме считать window.name
Либо, передать во фрейм ин-фу через postmessage

culver 29.05.2013 10:40

т.е., я передаю вместе с кодом ифрейма скрипт, который читает имя сайта, и передаёт в ифрейм, а там уже просто.
Но в этом случае владелец сайта, которому я даю код с ифреймом может заменить этот скрипт, чтобы указать подложный сайт.
Так же и через postmessage, как я понимаю, должен инфу передавать внешний сайт.
По другому никак нельзя?

Deff 29.05.2013 10:46

culver,
Фрейм с инодомена не может напрямую общаться с текущим сайтом из политики безопасности.... ток передача данных во фрейм скриптом
Цитата:

Сообщение от culver
Но в этом случае владелец сайта, которому я даю код с ифреймом может заменить этот скрипт,

Воткнуть установку фрейма скриптом, проверить верность кода установки можно в самом фрейме(зная текущий адрес страницы), к примеру по контрольной сумме md5, и отправить доклад на Ваш сайт

culver 29.05.2013 10:57

Цитата:

Сообщение от Deff
проверить верность кода установки можно в самом фрейме(зная текущий адрес страницы), к примеру по контрольной сумме amd5

Что-то плохо понимаю, можно подробнее, пожалуйста?

Deff 29.05.2013 11:09

Для баннерной сети, баннер-фрейм для каждого сайта имеет свой уникальный код для name, который при загрузке фрейма отправляется аяксом на Ваш сайт, где Ваш сервер делает проверку кода установки, тогда можно реализовать единственным фреймом

culver 29.05.2013 11:11

В случае баннерной сети клиенту не выгодно менять код, а моём случае - выгодно.
Т.е. клиент регистрируется повторно, указывая левый сайт, получает новый код с ифреймом, вставляет его на свой сайт и загружает бонусную (для новичков) информацию.
Как с этим можно бороться?

Deff 29.05.2013 11:15

culver,
Если он сменит код, то Ваш сервер не обнаружит фрейм на сайте по данному идентификатору...что аналогично отсутствию фрейма
Фрейм наверно выводит контент, после получения ответа на аякс запрос с кодом идентификатора от своего сервера

culver 29.05.2013 11:41

Если он зарегистрируется ещё раз то у него будет валидный код но для другого сайта (указанного при регистрации). Как проверить с какого сайта поступает запрос на информацию?

dmitriymar 29.05.2013 12:02

в фрейме страница с родного сайта(того сайта на каком будет размещена реклама-именно код этой страницы предоставляется а не рекламы) делающая редирект любым понравившимся способом на страницу рекламы, какая будет отображаться в фрейме

Таким образом можно проверить и реферер(если он есть) у загруженной страницы, а можно и ссылке для редиректа как дописать параметры сайта, так и взять в живую чтобы сравнить реальные с записанными . -это всё не проблема Также можно и куки писать -как и делают многие .

И соответственно к параметрам адреса страницы, какая будет открываться, дописываются параметры для отслеживания с какого сайта был переход.

И всё . Это классика неоднократно описанная.

Да и если на то пошло то, не код страницы с родного сайта даётся в основном, а контейнер со скриптом генерящий фрейм и предающий в него параметры для идентификации страницы хозяина, а страница из фрейма уже поднимает эти данные из адреса страницы банера


Часовой пояс GMT +3, время: 16:19.