Как сделать стучалку?

Тема в разделе "Как сделать...", создана пользователем repacksman, 13 апр 2015.

  1. repacksman

    repacksman

    Регистр.:
    12 июн 2012
    Сообщения:
    154
    Симпатии:
    2
    Дело в том что я делаю шаблоны и потом продаю их. И продаю на один домен, но покупатели часто перепродают их, и вот я хочу получать ссылки всех сайтов на которых есть мой шаблон. Как такое можно осуществить? Слышал через base64 можно такое сделать
     
  2. Finnland

    Finnland Создатель

    Заблокирован
    Регистр.:
    22 авг 2014
    Сообщения:
    10
    Симпатии:
    35
    например неприметную картинку, которая подтягивается с твоего сайта, а ты уже смотришь с каких сайтов были обращения к ней. Чтоб не так часто это происходило, в интернет-магазине например, картинку можно разместить на странице заказа...
     
    repacksman нравится это.
  3. Denixxx

    Denixxx

    Регистр.:
    7 фев 2014
    Сообщения:
    247
    Симпатии:
    191
    Самое простое — прописать в шаблоне картинку, загружаемую со своего сайта, лучше всего в css какой-то библиотеки, например бутстрапа или jquery ui, на который не подумаешь даже.
    А уже на сайте вести статистику загрузок картинки любым доступным способом.
    Домен кстати лучше всего чтобы был Ваш, но не с которого шаблон продаете, иначе можно будет найти стучалку по названию домена в файлах шаблона простым поиском.
     
    repacksman нравится это.
  4. repacksman

    repacksman

    Регистр.:
    12 июн 2012
    Сообщения:
    154
    Симпатии:
    2
    А как я смогу посмотреть с какого сайта к картинке обращались? В логах на сервере я смогу только посмотреть с какого ИП обращались
     
  5. Finnland

    Finnland Создатель

    Заблокирован
    Регистр.:
    22 авг 2014
    Сообщения:
    10
    Симпатии:
    35
    На вскидку... не тестил
    Создаешь у себя файл 1.php
    Суешь в него это:
    PHP:
    <?php
    header 
    ("Content-type: image/png");
    $im = @imagecreate (11) or die ("Cannot Initialize new GD image stream"); // размер картинки 1*1
    $background_color imagecolorallocate ($im255255255);
    $text_color imagecolorallocate ($im2331491);
    imagepng ($im);
        
    $remAddr=$_SERVER['HTTP_REFERER']; // хост от куда будет картинка
        
    $addrport=$remAddr;
        
    $fl="host.txt"// записаться должен сайт чужой
        
    $flcount="hits.txt";

        
    $fh fopen($fl"a+") or die("File does not exist!");
        
    flock($fh,LOCK_EX);
        
    $file_array file($fh);
        if(!
    in_array($addrport."\r\n"$file_array)){
          
               
    fwrite($fh$addrport."\r\n");
         
               
    $fhcount fopen($flcount"a+") or die("File does not exist!");
               
    flock($fhcount,LOCK_EX);
                    
    $count=fread($fhcount,filesize($fhcount)+100);
                    
    $count++;
                    
    ftruncate($fhcount,0);
                    
    fwrite($fhcount,$count);
               
    flock($fhcount,LOCK_UN);
               
    fclose($fhcount);
        }
         
    flock($fh,LOCK_UN);
        
    fclose($fh);
    ?>    

    И в шаблон вставляешь
    <img src='http://твой сайт/1.php'>

    У тебя создадутся 2 txt файла
    1. кол-во загрузок
    2. имя домена
     
    Последнее редактирование: 13 апр 2015
    repacksman нравится это.
  6. Denixxx

    Denixxx

    Регистр.:
    7 фев 2014
    Сообщения:
    247
    Симпатии:
    191
    В общем виде картинка может быть даже php-файлом.
    А чтобы его выдать за картинку, файл должен отдавать правильные заголовки.
    Например — для того чтобы написать электропочту текстом (чтобы спамеры с сайта не крали), я делал например php-файл, который введенную строку преобразует в строку-картинку: http://fromgomel.com/image.php?text=zzz@zzz.com
    Код файла — https://github.com/Den1xxx/ReloadCMS/blob/master/image.php
    Ну или капча примерно так же выводится.

    В Вашем же случае всё ещё проще:
    PHP:
    //Здесь производим какие-то действия, например пишем логи
    //Читаем картинку
    if ($png=file_get_contents('image.png')) {
    //Выводим картинку
    header("Content-type: image/png");
    $echo $png;
    }
    Самое замечательное — это то, что например без этой картинки шаблон может неправильно работать, и во-вторых, настройкой сервера можно сделать отдачу php файла с расширением png — тогда стучалку вообще будет трудно заподозрить.
    //ЗЫ sorry, был немного неправильный код — исправил 14.03
     
    Последнее редактирование: 14 апр 2015
    pozhisni и repacksman нравится это.
  7. mozi

    mozi Создатель

    Регистр.:
    26 мар 2015
    Сообщения:
    14
    Симпатии:
    3
    base64 вообще не стоит использовать, так как это первое на что обращают внимание!