Перед созданием новой темы, пожалуйста, ознакомьтесь с FAQ по LinkorCMS

Капча в админке

Супер пользователь
Сообщений: 125
Есть моя тема где я прикрутил капчу в админку. Так вот возникла проблема - после приостановления услуг хостинга и дальнейщего возобнавления, капча попросту не генерировалась! Пришлось перезаливать админ файл пару раз...
А на самом сайте я не смог проверить т.к. он был закрыт для пользователей.

-- Изменено "Мартин": 02.01.2016 18:18 --
Разработчик
Сообщений: 605
А вопрос то в чем?
Супер пользователь
Сообщений: 125
Ну так причину хочу найти. Я же не всегда с компьютером бываю. перезаливки нам не нужны
Разработчик
Сообщений: 605
Если проблема решается перезаливом admin.php, то тогда надо сравнивать его с тем, который заливаете. И задаваться вопросом почему происходит (и скорее у хостера, чем у нас. линкор не трогает php файлы, ему незачем).

-- Изменено "Мартин": 02.01.2016 03:23 --
Супер пользователь
Сообщений: 125
перезалив после редектирования!

Вообще проблема в том, что когда сайт закрыт - капча тоже отключается.
Как это можно исправить ?
Разработчик
Сообщений: 605
У вас прикол в том, что капча запрашивается через index.php, который является точкой входа на пользовательскую часть сайта. Естественно, если сайт закрыт от пользователей и вы не авторизированы как администратор, то модуль plugins нельзя запросить и попросить исполнить вызываемый плагин (чем и является капча в LinkorCMS).

Тут или делать какие-то исключения, хотя этот вариант не очень красив. Или встроить капчу еще в администраторскую часть сайта, чтобы она запрашивалась через точку входа admin.php (администраторская часть сайта, то есть админка).
Супер пользователь
Сообщений: 125
У меня вопрос: в дальнейшем для сравнения верности кода используются данные из куков ?
если так, то наверно более защищено сделать запись в бд с ip и timeexpire ну и code соответственно и там уже сравнить ?

-- Изменено "Fort": 13.02.2016 03:47 --
Разработчик
Сообщений: 605
Fort:
в дальнейшем для сравнения верности кода используются данные из куков ?

Нет, это очень глупо. Код хранится в стандартной сессии PHP.

Fort:
то наверно более защищено сделать запись в бд с ip и timeexpire ну и code соответственно и там уже сравнить ?

Можно, но смысла особого нет. Более продуктивно переписать саму генерацию капчи. Та, что имеется, слишком проста и не особо сложно ее распознать. Лемуровская капча уже получше.

А так есть и Google ReCaptcha, которая в последнее время дает выбирать картинки. И KeyCaptcha, которая требует собрать картинку. В целом то это обходится тоже, особенно живыми людьми (сервисы по распознаванию капчи индусами следят за ReCaptcha и обновляют API).

Можно и дальше вдаваться в подробности, но при желании все-равно напишут бот под ваш сайт, если надо. Вопрос только в целесообразности затрат на это. Главное, чтобы массовые, тупые и типовые боты, которые случайно забрели на сайт отсеивались. А так если надо, то даже симок мешок возьмут и индусов.
Супер пользователь
Сообщений: 125
Я не знаю как подключить его через admin.php
в модулях подключение через модуль plugins, а там тип только 4 !
И если в админ.пхп делать IncludePluginsGroup('antibot'); , то тут только тип 5.

Пришел к тому, что если делать НЕ include(путь к антиботу), то доделывать анти бот как системный плагин
Придумать новую систему вызова для модулей....
Дайте коммент

и помогите набросать алгоритм дописывания моей идеи

и еще, если ли смысл добавить REalPath2 в modules\plugins\index.php ?

-- Изменено "Fort": 13.02.2016 17:36 --
Разработчик
Сообщений: 605
Fort:
в модулях подключение через модуль plugins, а там тип только 4 !

Забудьте о нем. Если сайт закрыт для пользователя, то нельзя ни один модуль запустить. И если не авторизирован в админке, то так же никакие модули из админки тем более нельзя запустить. Ну а если есть доступ к закрытому сайту, то авторизация в админке явно имеется.

Антибот имеет тип callee, по сути модуль plugins просто берет и инклудит плагин. Код авторизации находится в начале admin.php. Ничего не мешает там по запросу капчи инклудить плагин и все. Там код и так занимается двумя действиями: проверкой и авторизацией, вывод формы входа.
Супер пользователь
Сообщений: 125
Мартин:
Fort:
в модулях подключение через модуль plugins, а там тип только 4 !

Забудьте о нем. Если сайт закрыт для пользователя, то нельзя ни один модуль запустить. И если не авторизирован в админке, то так же никакие модули из админки тем более нельзя запустить. Ну а если есть доступ к закрытому сайту, то авторизация в админке явно имеется.

Антибот имеет тип callee, по сути модуль plugins просто берет и инклудит плагин. Код авторизации находится в начале admin.php. Ничего не мешает там по запросу капчи инклудить плагин и все. Там код и так занимается двумя действиями: проверкой и авторизацией, вывод формы входа.
это и так все просто и понятно. Я говорил про то как сделать красивую точку входа в АДМИН файле при этом сохранив текущий возов из ИНДЕКС файла.
Красиво сейчас ни как не получится только:

<?
if(isset($_GET['antibot'])){<br />
    include(System::config('plug_dir').'antibot/index.php');<br />
}
?>
типа такого.
Я думаю дописать код в плагин, что бы он мог находится в папке системных плагинов.
Только еще не сообразил как более красиво все нужно писать....
Разработчик
Сообщений: 605
Fort:
Я говорил про то как сделать красивую точку входа в АДМИН файле при этом сохранив текущий возов из ИНДЕКС файла.

Ну тогда перепиливайте admin.php. Сделайте аналог модуля plugins для админки (вызываемые плагины админки, например), сделайте модуль админки login. Ну и разрешите вызывать эти два модуля неавторизированым лицам в админке. И будет все как с пользовательской частью сайта.
Гости не могут отвечать на темы. Войдите или Зарегистрируйтесь.
Здесь присутствуют
(пользователей: 0, гостей: 1)
Быстрый переход: