Перейти к содержанию

Рекомендуемые сообщения

Bots & Crawlers OnLine


Bots & Crawlers OnLine


Модуль отображает активность ботов на сайте в "DashBoard" и в отчете "Клиенты онлайн" (боты отображаются вместо "Гостей") с возможностью записи UserAgent'ов посетителей в лог файл (для отладки и ловли пропущенных ботов).
По умолчанию OpenCart ведет статистику посещений за последний час (фиксируется одно первое посещение на каждый IP адрес).

Модуль весьма полезен для анализа текущих посетителей, определения ботов и выявления векторов нагрузки на сайт .


Отслеживаемые боты настраиваются в стандартных настройках магазина в закладке "Опции" в разделе "Аккаунт" после настройки "Клиенты онлайн" (подстроки из UserAgent, разделенные символом "|").

Должно получиться что-то типа "YandexBot|Googlebot|rambler|mail.ru|aport|lycos|yahoo|bingbot|bing|facebook" (без кавычек, регистр не имеет значения).
Там же включается ведения LOG'а.
Больше ничего настраивать не нужно.


Логи пишутся в штатный каталог "system/logs/useragents.log".
В нем "плюсиками" отмечаются отловленные боты, а без них - прочие посетители (см. скриншот выше).
Чтобы защитить его от злоумышленников, добавьте следующую запись в свой .htaccess:

Скрытый текст

# Prevent Direct Access to files
<FilesMatch "(?i)((\.tpl|\.ini|\.log|(?<!robots)\.txt))">
 Order deny,allow
 Deny from all
</FilesMatch>

После этого смотреть посторонним ваши файлы, типы которых перечислены в настройке будет запрещено.
Демку не делал, смотрите скриншоты.
Версии для OCMod и VQMod!


Боты появятся не сразу, а при их следующем заходе на ваш сайт!

 

УСТАНОВКА:

Скрытый текст

Версия для VQMod:
1. Скопируйте файл "bots_online.vqmod.xml" из директории с именем нужной вам версии OpenCart в папку "vqmod/xml/".
2. Почистите кэш в папке "vqmod/vqcache/".

 

Версия для OCMod:
1. Скопируйте файл "bots_online.ocmod.xml" из нужной директории в папку "system"
ИЛИ
загрузите его через меню "Установка расширений".
2. Обновите кэш модификаторов.

 

После установки ОБЯЗАТЕЛЬНО войдите в настройки магазина, И СОХРАНИТЕ ИХ проверив конфигурационную строку имен ботов!
При сохранении настроек магазина создаются поля и записи в базе данных, необходимые для корректной работы модуля!

 


  • Добавил
  • Добавлено
    20.04.2017
  • Категория
  • Системные требования
    ---
  • Сайт разработчика
  • Старая цена
  • Метод активации
    Без активации
  • Ioncube Loader
    Нет
  • OpenCart
    2.1
    2.0
  • ocStore
    2.1
  • OpenCart.Pro, ocShop
    Не проверялось

 

Изменено пользователем Wild
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обновил до версии 1.1.0:

+ Добавлен вывод количества ботов на dashboard.

+ Добавлена запись UserAgent'ов в system/logs/useragents.log.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обновил до версии 1.2.0:

+ Добавлена поддержка версий OC v2.1.x - v2.3.x.
√ Внесен мелкий фикс при записи в БД.
+ Добавлен ReadMe.txt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо - забавная штукенция )

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

пригодится

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В целом все работает, но в логах вот такая ошибка появляется частенько:

2017-05-10 14:00:52 - PHP Notice:  Undefined index: HTTP_USER_AGENT in ******/*****/****/system/storage/modification/catalog/model/tool/online.php on line 14

Что с ней делать? А модуль - ВЕЩЬ!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какая версия Opencart?
Какая тема установлена?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 11.05.2017 в 17:05, Wild сказал:

Какая версия Opencart?
Какая тема установлена?

версия 2.3.0.2

тема coloring

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Че там за строки в указанном файле (модифицированном)?
 

Изменено пользователем Wild

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

после установки на cstore 23022

движок лег и на фронте и на адмнке с ошибкой 500

лог ошибок прикрепил

пришлось восстанавливать на хосте из бекапа

движок без изменнений

 

 

error_log

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Странно что так серьезно...
Это ведь модификатор.

Файлы движка не перезаписываются.

Даже если были ошибки, то после удаления xml все должно было восстановиться.
Зачем было весь бэкап поднимать.

Лог посмотрю, но попозже.
Ща под рукой нету установленной 2.3.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть мысль...
Вы выполняли пункт из описания?
 

Цитата

После установки ОБЯЗАТЕЛЬНО войдите в настройки магазина, И СОХРАНИТЕ ИХ проверив конфигурационную строку имен ботов!
При сохранении настроек магазина создаются поля и записи в базе данных, необходимые для корректной работы модуля!

 

Судя по логу отсутствуют нужные таблицы в базе.

Изменено пользователем Wild

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обалденный модуль, и мне сайт положил, пиндец какой-то

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я не из битвы экстрасенсов.

Можно хоть немного информации?

Версия движка?

Инструкции по установке выполнили?

Какую версию ставили (ocmod, vqmod)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, Wild сказал:

Я не из битвы экстрасенсов.

Можно хоть немного информации?

Версия движка?

Инструкции по установке выполнили?

Какую версию ставили (ocmod, vqmod)?

Аналогично так же как и у  svarserv, ошибка 500 сайт лег, белый экран, удалял модификатор через ftp все восстановилось. ocStore 2.3 шаблон MoneyMaker ocmod, все по инструкции(

Изменено пользователем levit

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
После установки ОБЯЗАТЕЛЬНО войдите в настройки магазина, И СОХРАНИТЕ ИХ проверив конфигурационную строку имен ботов!
При сохранении настроек магазина создаются поля и записи в базе данных, необходимые для корректной работы модуля!


@Wild Сделайте инсталяционный пакет с файлом install.php

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, chukcha сказал:

После установки ОБЯЗАТЕЛЬНО войдите в настройки магазина, И СОХРАНИТЕ ИХ проверив конфигурационную строку имен ботов!
При сохранении настроек магазина создаются поля и записи в базе данных, необходимые для корректной работы модуля!


@Wild Сделайте инсталяционный пакет с файлом install.php

Уже что то боюсь)))) Да и делал я так!

Изменено пользователем levit

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
9 минут назад, levit сказал:

Уже что то боюсь))))

максимум, что может сломать

Это вот это

	<file path="catalog/model/tool/online.php">
		<operation>
			<search><![CDATA[
				($ip, $customer_id, $url, $referer) {
			]]></search>
			<add position="replace"><![CDATA[
($ip, $customer_id, $url, $referer, $bot_name) {
			]]></add>
		</operation>

		<operation>
			<search><![CDATA[
				$this->db->query("REPLACE INTO `" . DB_PREFIX . "customer_online` SET `ip` = '" . $this->db->escape($ip) . "', `customer_id` = '" . (int)$customer_id . "', `url` = '" . $this->db->escape($url) . "', `referer` = '" . $this->db->escape($referer) . "', `date_added` = '" . $this->db->escape(date('Y-m-d H:i:s')) . "'");
			]]></search>
			<add position="replace"><![CDATA[
$debug_log = new Log('useragents.log');
if ($this->config->get('config_bots_log'))
	if ($bot_name)
		$debug_log->write('+++++ : ' . $bot_name . ' : ' . $ip . ' : ' . $this->request->server['HTTP_USER_AGENT']);
	else
		$debug_log->write($ip . ' : ' . $this->request->server['HTTP_USER_AGENT']);

$this->db->query("REPLACE INTO `" . DB_PREFIX . "customer_online` SET `ip` = '" . $this->db->escape($ip) . "', `customer_id` = '" . (int)$customer_id . "', `url` = '" . $this->db->escape($url) . "', `referer` = '" . $this->db->escape($referer) . "', `date_added` = '" . $this->db->escape(date('Y-m-d H:i:s')) . "', `bot_name` = '" . $this->db->escape($bot_name) . "'");
			]]></add>
		</operation>
	</file>

Но это может произойти если не вошли в настройки

Если зашли и видели настройки для ботов - должно все работать..

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
21 минуту назад, chukcha сказал:

максимум, что может сломать

Это вот это

Но это может произойти если не вошли в настройки

Если зашли и видели настройки для ботов - должно все работать..

 

 

хм, не появляется настройки для ботов -_-

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вы обратите внимание, то мод тестировался на весиях 2.0.х и 2.1.х.

По этому с другими версиями могут быть проблемы.

Все руки не доходят адаптировать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если честно, то это игрушка, сделить за ботами
Более инересно смотреть как часто они идексируют нужную страницу(ы)
Как часто ходят

Можно конечно подключить анализаторы http логов, а можно

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Такая неприкрытая реклама... )))

 

Думал купить ваш продукт, но поглядев на него внимательнее, понял, что он мало полезен.

Эту инфу проще собирать на соответствующих сервисах и не забивать ею собственную базу.

 

У меня только краткая оперативная инфа.

 

Ничего личного, только IMHO.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 24.10.2017 в 17:25, Wild сказал:

Я не из битвы экстрасенсов.

Можно хоть немного информации?

Версия движка?

Инструкции по установке выполнили?

Какую версию ставили (ocmod, vqmod)?

14		$debug_log->write($ip . ' : ' . $this->request->server['HTTP_USER_AGENT']);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
11 минут назад, skylin371 сказал:

14		$debug_log->write($ip . ' : ' . $this->request->server['HTTP_USER_AGENT']);

 

Эта строка записывает данные посетителя в log.

Что конкретно вас смущает в ней?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
9 минут назад, Wild сказал:

Эта строка записывает данные посетителя в log.

Что конкретно вас смущает в ней?

вот это 2018-04-03 9:25:11 - PHP Notice:  Undefined index: HTTP_USER_AGENT in ***/system/storage/modification/catalog/model/tool/online.php on line 14

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.