"Защита" от САР

Тема в разделе "PHP", создана пользователем Phentis, 23 май 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Phentis

    Phentis Создатель

    Регистр.:
    23 авг 2008
    Сообщения:
    16
    Симпатии:
    0
    Доброго времени суток!

    Пишу партнерку, засчитывающую переходы по ссылкам. Задача - сделать невозможным пускание этих ссылок в САР.
    Насколько мне известно, в этих системах сайты рекламодателей открываются во фрейме, так вот, как сделать так, что если мой сайт открывается во фрейме, то переход не засчитывается?

    Заранее Спасибо!
     
  2. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    делаешь яваскрипт с проверкой:
    HTML:
    
    if(window.top==window) то переход зассчитывается, в противном случае нет
    
     
    Phentis нравится это.
  3. Phentis

    Phentis Создатель

    Регистр.:
    23 авг 2008
    Сообщения:
    16
    Симпатии:
    0
    Да, действительно работает! Спасибо!
     
  4. -c0d3r-

    -c0d3r- Создатель

    Регистр.:
    4 апр 2009
    Сообщения:
    10
    Симпатии:
    0
    Еще по рефереру можно сделать.
     
  5. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    каким образом ты по рефереру сделаешь защиту от фрейма?
     
  6. Phentis

    Phentis Создатель

    Регистр.:
    23 авг 2008
    Сообщения:
    16
    Симпатии:
    0
    Еще один вопрос возник, правда не совсем по теме, но новый топик создавать не буду.

    Вот мне известен метод GET, где данные передаются по типу:
    Код:
    http://сайт.ру/go.php?id=n
    А как называется это?:
    Код:
    http://сайт.ру/id_пользователя/еще_какое-то_значение
    То есть, тот же GET получается, но немного по-другому оформленный. Дело в том, что простым GET'ом, например ссылку, которая должна открыться во фрейме не передать...

    Заранее Спасибо!
     
  7. Zeratul

    Zeratul Создатель

    Регистр.:
    17 мар 2006
    Сообщения:
    1.322
    Симпатии:
    3.857
    Это называется mod_rewrite.
    Веб сервер перенаправляет запросы следуя указанным тобой правилам. Например вот так:
    Код:
    http://сайт.ру/{USER_ID}/{RANDOM_LINK_HASH}
    
    Следуя указанному правилу он например перенаправляет все такие запросы на скрипт вот так:
    Код:
    http://сайт.ру/tds.php?user_id={USER_ID}&hash={RANDOM_LINK_HASH}
    
    По реврайту есть отдельный раздел на форуме, то советую почитать мануалы.
    Главное прочесть что значат флаги, и уметь пользоваться регулярными выражениями.

    Удачи :)
     
    Phentis нравится это.
  8. Phentis

    Phentis Создатель

    Регистр.:
    23 авг 2008
    Сообщения:
    16
    Симпатии:
    0
    Спасибо, в принципе разобрался, вот только прописываю строку в .htaccess:

    RewriteRule ^([A-Za-z]+)/([A-Za-z0-9]+)/$ to.php?user=$1&url=$2

    Но на месте ([A-Za-z0-9]+), нужно поставить фильтр для url (так как в ссылках встречаются различные знаки). Я в этом вообще ноль, так что если не сложно, помогите реализовать этот фильтр.

    Заранее Спасибо!
     
  9. jacksoft

    jacksoft

    Регистр.:
    22 мар 2007
    Сообщения:
    595
    Симпатии:
    460
    Можно пойти дальше. Забирать ифрейм на себя...

    Ламалка ифрейма:
    if (top.location != location) top.location.href = document.location.href;
     
  10. Zeratul

    Zeratul Создатель

    Регистр.:
    17 мар 2006
    Сообщения:
    1.322
    Симпатии:
    3.857
    http://htaccess.net.ru/ маны по mod_rewrite хорошие там. :)

    Ман по регекспам в аттаче(на всяк случай залил).
    Ну или тут:
    http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/

    Удачи.

    PS: Фильтровать данные из $_GET надо ещё раз на стороне скрипте, тоже регулярками(`preg_match`).
    Это обязательно. :read:
    ...
    Ночной тупизм: :)))))))
    2jacksoft Это тут причем?
    Конечно понятно что реализация ТС в 99% используется для iframe трафика, но все таки не только для него..

    Могут быть инвайты, самописная ТДС и многое другое..
    Это я так, к слову. Что не по теме пишешь.
     

    Вложения:

    Phentis нравится это.
Статус темы:
Закрыта.