Настройки модуля
Установка модуля на SEoDOR
Установка на любой другой скрипт, CMS, дорген
Удаленная установка модуля в виде вашего сервиса клоакинга
Дополнительная проверка юзеров через JavaScript
Формат файлов *list_host.txt и *list_ua_bot.txt
Формат файла *list_ip.txt
Отлов IP ботов через "невидимую" ссылку
Подключение модуля для статического режима
Настройки модуля
Перед установкой модуля рекомендуется его настроить. Настройки модуля находятся в файле cloaker_script.php:- $auto_block - автоматически добавлять ботов в базу (IP и HostIP).
- при включенной опции, если скрипт отловит бота по одному из признаков (IP, HostIP или UserAgent), то остальные признаки (IP и HostIP) запишутся в базу ботов, если их еще там нет.
- после тестирования клоаки включите данную опцию. - $auto_block_ua - автоматически добавлять UserAgent в базу (не рекомендуется).
- тоже самое, что и опция выше, но относится только к файлу ban_list_ua_bot.txt.
- не рекомендуется ее включать, т.к. UserAgent легко подделать. - $ban - блокировать ботов из списка data/ban_list_*.txt
- если включена эта опция, то ботам, которые попадают под признаки из файлов data/ban_list_*.txt будет показана страница 404. - $js_cloaker - дополнительная проверка через JavaScript (используется совместно с JS Cloaker Script).
- если эта опция включена, то пользователю, которого модуль определил как юзера, будет установлена Кука. Проверку на эту Куку будет выполнять js-скрипт (см. ниже). - $log - вести лог ботов и посещений юзеров.
- лог посещений ведется для доргена SEoDOR, в котором доступен интерфейс статистики ботов и юзеров.
- если модуль используется не в SEoDOR'e, то в настройках эту опцию можно отключить, чтобы не создавалась дополнительная нагрузка.
Установка модуля на SEoDOR
- Загрузите файлы модуля из папки module в папку с доргеном.
- В conf.php доргена найдите и включите опцию:
$cloaka = 1; // Модуль "Клоака + статистика" (1 - ДА, 0 - НЕТ)
- Установите права на запись папки inc/mods/cloaka/data/ и на все файлы в ней.
- Готово!
[NO_CACHE]
[I_CLOAKA_BOT]контент только для ботов, юзеры его не увидят[/I_CLOAKA_BOT]
[I_CLOAKA_USER]контент только для юзеров, боты его не увидят[/I_CLOAKA_USER]
[/NO_CACHE]
Обратите внимание - макросы модуля нужно прописывать между макросами [NO_CACHE]!
Установка на любой другой скрипт, CMS, дорген
- Загрузите файлы модуля из папки module в папку с вашим скриптом (модуль должен находится в папках согласно путям inc/mods/cloaka/).
- Для подключения модуля в вашем скрипте пропишите следующий код:
<?php // Модуль SEoDOR Cloaker Script define ('SEODOR', true); include ('inc/mods/cloaka/cloaker_script.php'); $is_bot = cloaka($userIP, $uagent); if(empty($is_bot)){ // это юзер echo '<script type="text/javascript">var q = "кей";</script>'; echo '<script type="text/javascript" src="http://site/jscs.min.js"></script>'; } if(!empty($is_bot)){ // это бот } ?>
- Установите права на запись папки inc/mods/cloaka/data/ и на все файлы в ней.
- Готово!
Удаленная установка модуля в виде вашего сервиса клоакинга
- Загрузите файлы модуля из папки module (серверная часть) на хостинг (модуль должен находится в папках согласно путям inc/mods/cloaka/).
Можно загрузить на хостинг и сам дорген SEoDOR с установленным модулем - в этом случае будет работать статистика посещений ботов и юзеров! - Из папки remote_site загрузите файлы на хостинг, где необходима удаленная работа модуля клоакинга (это клиентская часть).
- В файле check_is_bot.php укажите путь к файлу remote.php и ключ, с которым разрешено подключаться к модулю (придумайте любой ключ и укажите такой же в файле модуля inc/mods/cloaka/remote.php, чтобы кто угодно не смог использовать сервис).
- Подключите модуль к вашему скрипту согласно примеру из файла example.php.
- Настройте и скопируйте также на хостинг файл jscs.min.js - для использования дополнительной проверки юзеров через JavaScript.
- Готово!
Дополнительная проверка юзеров через JavaScript
В архиве находятся два одинаковых по функционалу файла jscs.js и jscs.min.js - это JS Cloaker Script. Отличие между ними это то, что файл jscs.min.js сжат.Загружать на рабочий сайт рекомендуется сжатый файл или обфусцированный вами лично, чтобы открытый код JS-файла был немного "закрытый".
- Загрузите файл jscs.min.js в корень сайта, перед этим указав в нем URL слива/ТДС.
- В настройках модуля активируйте опцию $js_cloaker.
- Затем, для подключения дополнительной проверки юзеров через JavaScript, в шаблоне доргена пропишите следующий код:
[NO_CACHE] [I_CLOAKA_USER] <script type="text/javascript">var q = '[L_QUERY_FULL]';</script> <script type="text/javascript" src="[S_DOR_URL]jscs.min.js"></script> [/I_CLOAKA_USER] [/NO_CACHE]
Формат файлов *list_host.txt и *list_ua_bot.txt
В файлах HostIP (*list_host.txt) и User Agent (*list_ua_bot.txt) поддерживаются регулярные выражения (их нужно прописывать между ~этими символами~), а также "упрощенные" регулярки:^ - начало строки;
$ - конец строки;
* - любое количество любых символов.
В "упрощенной" регулярке спец. символы экранировать не нужно.
Формат файла *list_ip.txt
Списки IP поддерживают такие форматы:
123.123.123.123
123.123.123.0-123.123.123.255
123.123.123.0/24
Если посетитель зашел под IPv6, то он автоматически считается ботом.
Отлов IP ботов, которые заходят по "невидимой" ссылке на страницу site.ru/bot.htm
- Скопируйте файл из папки module/templates/example/bot.html в папку с шаблоном - это скрипт отлова ботов.
- В шаблоне пропишите невидимую ссылку на страницу bot.htm:
<a href="bot.htm" style="display: none;">click</a>
либо ссылку-картинку в один пиксель:
<a href="bot.htm"><img src="pixel.jpg" alt="" border="0" /></a>
Файл шаблона со скриптом отлова ботов можете называть как угодно, но не забывайте - адрес ссылки должен быть таким же (пользовательские страницы).
PS. В файле bot.html можно прописать еще какую-нибудь информацию/макросы, чтобы страница не была пустой и подозрительной.
Подключение модуля для статического режима
- Если вы используете в статическом режиме расширение страниц .html, то вам необходимо будет на клиенте создать файл .htaccess с таким содержимым:
AddType application/x-httpd-php .html .htm
либо в настройках доргена укажите расширение страниц .php - Скопируйте файл из архива с модулем remote_site/check_is_bot.php в папку с шаблоном.
- В шаблоне page.html пропишите такой код:
<?php include $_SERVER['DOCUMENT_ROOT'].'[S_TEMPL]check_is_bot.php'; // путь к файлу в папке с шаблоном if(empty($is_bot)){ // выводим контент для юзера, боты его не увидят echo 'это юзер!'; } if(!empty($is_bot)){ // выводим контент для бота, юзеры его не увидят echo 'это бот!'; } ?>
- В файле доргена inc/templ.php закомментируйте или удалите эти строки:
if (preg_match_all('~<\?([^p]|php)(.*)\?>~Us', $templ, $m, PREG_SET_ORDER)) { for ($i = 0; $i < count($m); $i++) { $templ = preg_replace('~<\?([^p]|php)(.*)\?>~Us', eval_code(''), $templ, 1); } }
чтобы при генерации страниц дорген не выполнял php код, а оставлял его в шаблоне.