• Блог
  • Доработанный easyBlacklist

Как и обещал, выкладываю доработанный компонент easyBlacklist для блокировки пользователей по IP Сергея Фещукова. Я про него уже писал. Изначально компонент был совсем easy. Скорее всего это был первый опыт автора по разработке компонентов MODX. Так как мне было лень делать такой же с нуля, я просто отрефакторил код, исправил ошибки и допилил нужный мне функционал:

  • убрал дублирование;
  • убрал отключение компонента для контекста mgr;
  • добавил индексы;
  • несколько полей;
  • доработал таблицу в админке;
  • добавил возможность логирования запросов с запрещённых IP.

Картинка старая. На ней не хватает поля с количеством попыток запросов по указанному IP.

Конечно, для полноценного управления блокировками здесь не помешало бы добавить блокировку по времени и работу с масками IP и диапазонами. Ещё хорошо бы добавить поиск по IP. Не помешали бы и права. Мне всё это было не нужно, поэтому себе такое не делал. Может автор вновь проявит интерес и доработает. Будем надеяться. А PR с моей версией я ему отправил. А те, кто не любит ждать, могут скачать новую версию уже сейчас.

Update 18.09.2018. Новая версия уже в репозитории. Обновляемся через менеджер приложений.

0   2211

Комментарии ()

  1. Евгений 24 сентября 2018 # 0
    После установки при попытке зайти в приложении пишет:

    Could not find action file at: controllers/default/index.php
    1. Сергей Шлоков 24 сентября 2018 # 0
      Попробуйте последовательно
      1. Сбросить кэш.
      2. Переустановить компонент.
      1. Евгений 24 сентября 2018 # 0
        Пробовал: не помогло.

        Даже таблицу удалял и папку cash — не помогло;(
        1. Сергей Шлоков 24 сентября 2018 # 0
          Честно говоря, вариантов больше нет.
          1. Евгений 24 сентября 2018 # 0
            Разобрался — причина в браузере — зашел с другого компа — все ок.

            Потом очистил кэш браузера — тоже ок.

            Спасибо за дополнение.

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

    Выделите опечатку и нажмите Ctrl + Enter, чтобы отправить сообщение об ошибке.