В последнее время зафиксировано уже несколько случев, когда на сайтах, работающих под ЛС, регистрируется куча ботов с одной лишь целью — навтыкать ссылок в своем профиле. Есть информация, что даже админка с баном по айпи не спасает (не знаю, почему, но это факт).
В такой ситуации лучшее решение — это банить ботов по айпишнику непосредственно в файле .htaccess. Во-первых, надежно, потому что отсечение по айпи идет на уровне сервера. А во-вторых, эффективно, т.к. не грузятся страницы, не исполняются скрипты, не тратятся понапрасну ресурсы сервера. Опять же потому, что на уровне веб-сервера это все решается.
Вот рецепт, который дает юзер Eug (сам он сюда запостить не может, рейтинга не хватает, поэтому делаю за него).
— Для быстрого решения проблемы, описанной в топике livestreet.ru/blog/questions/2387.html поступаем так:
Берем файл .htaccess, который лежит в корне вашего сайта и руками перед 3-й строкой вписываем:
Order Deny,Allow
Deny from 82.193.96.212, 78.46.121.143
То есть запрещаем через файл конфигурирования апача доступ к сайту с данных айпишников (насколько я понял, у всех они фигурировали).
Т.е. файл .htaccess у вас должен получиться такой:
AddDefaultCharset UTF-8
Options -Indexes
Order Deny,Allow
Deny from 82.193.96.212, 78.46.121.143
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php
И так, продолжаем. В этой части будет расказано как создать меню (как на картинке) и воспользоваться модулем из предыдущего урока.
Для создания меню(панели админа) необходимо в каталоге «templates\skin\habra\» создать файл «menu.admin.tpl» (код файла приведен ниже).
Основное на что стоит обратить внимание это переменные: $sMenuItemSelect — с помощью нее можно узнать выбранное основное меню (например «Админка»), $sMenuSubItemSelect — это подменю которое выбрано (например, «Сайт»), а также стоит обратить внимание на указанные пути ссылок типа "{$DIR_WEB_ROOT}/admin/site/" от них будет зависеть какое действие будет вызываться.
Добавление комментариев гостями.
После определенных манипуляций, гость имеет возможность оставлять комментарии.
Ему доступны поля: login, email, captcha:)
Новые комментарии выводятся как от пользователя «Имя (гость)».
Суть проблемы — LS ищет и находит сфинксом заметки и комментарии из всех блогов, независимо от того имеете вы к ним доступ или нет.
Чинится это просто:
вносим в поисковый индекс id закрытого блога к которому относится топик или комментарий, либо 0 если этот блог не закрытый.
передаём в поиск id текущего пользователя
находим список закрытых блогов в которые имеет доступ текущий пользователь.
используем этот список расширенный нулём (что добавит все не закрытые блоги в результаты поиска для любого пользователя) со стандартной возможностью фильтрации Сфинкса
Сделано было давно, специально для проекта cgvault.ru, потому могу что-то пропустить или забыть написать. ищем баги и тд. поправлю)
Итак. Сортировка топиков по последним действиям, что это означает? Это значит, что топики сортируются по последним комментариям, а если комментариев нет, то по дате добавления. Итак на нужно будет добавить одно поле в таблицу и поправить несколько файлов
Мне кажется немного нелогичным, что в блоке прямого эфира при переключении на вкладку публикаций ссылки «Весь эфир» и «RSS» по прежнему ведут на комментарии и их рсс.
Чтобы сделать для каждой вкладки свои ссылки, смотрим сюда
Читать дальше →