Ошибка капчи битрикс

 

Добрый день.
Проблема возникла с капчей — при просмотре страницы незарегистрированным пользователем, картинка капчи не отображается. Если зайти, например, под админом, то все замечательно показывается.
В чем может быть проблема?
сайт

http://mostsakhalin.ru

, капча находится справа, в форме «Проголосуй ЗА».
Раньше все замечательно отображалось. Версия битрикса — 5.0.4.

Зараннее благодарен за советы.

 

Добрый день,

Дайте право «Чтение» на папку /bitrix/tools/ для не авторизованных пользователей.
Решает ли это проблему?

 

Права доступа на данную папку стоят 777, проблема остается.

 

Антон Долганин

Администратор

Сообщений: 8512
Баллов: 1056
Регистрация: 17.05.2007

#4

0

02.04.2009 04:59:29

Цитата
ades пишет:
Права доступа на данную папку стоят 777, проблема остается.

Это системные права. А Михаил вам про права в Битриксе. Через визуальный редактор которые настраиваются.

 

Михаил Митрофанов

Администратор

Сообщений: 1433
Баллов: 216
Регистрация: 31.10.2007

#5

0

02.04.2009 11:59:05

Цитата
Антон Долганин пишет:
Через визуальный редактор которые настраиваются.

Точнее через файловый менеджер продукта:
«Рабочий стол»-> «Структура сайта»-> «Файлы и папки».

 

Через битрикс права доступа к папке для пользователя Everyone стоят «drwxrwxrwx».

 

Так как решить данную проблему, может кто-нибудь подсказать?

 

Антон Долганин

Администратор

Сообщений: 8512
Баллов: 1056
Регистрация: 17.05.2007

#8

0

03.04.2009 08:04:31

Цитата
ades пишет:
Так как решить данную проблему, может кто-нибудь подсказать?

Варианты решения:
1. Написать обращение в ТП, сразу дать доступы к сайту (административные)
2. Прочитать документацию, что такое ПРАВА БИТРИКС и как их настраивать
3. Нанять специалиста

 
http://v-2-do29-d1247-241.webazilla.com/en/auth/?register=yes

— почему-то капча не отображается с первого раза, бывает, что надо обновить страницу несколько раз ( CTRL+F5 )?

 

Михаил Митрофанов

Администратор

Сообщений: 1433
Баллов: 216
Регистрация: 31.10.2007

#10

0

18.11.2009 12:45:04

Библиотека FreeType установлена на сервере? Если да, то какая версия библиотеки?

Проверяем права на хостинге

Особого внимания заслуживают следующие файлы и папки:

  • /bitrix/tools/
  • /bitrix/tools/captcha.php
  • /bitrix/tmp/
  • /bitrix/modules/main/tools/
  • /bitrix/modules/main/tools/captcha.php

Права на них должны соотвествовать тем, что стоят у вас в данных константах в dbconn.php.

define("BX_FILE_PERMISSIONS", 0644);
define("BX_DIR_PERMISSIONS", 0755);

Но для верности, можно поставить всем 0777 на время эксперимента.

Проверим наличие библиотеки FreeType

Тут, если не знаем как — нужно просто написать в тех. поддержку хостинга или обратится к системному администратору вашего хостинга / сервера.

Проверить наличие пустых строк в init.php

Иногда, это ломает капчу. Сделайте бекап файла и очистите его содержимое, залейте на сервер по FTP. Если после обновления страницы капча появилась, то удалите все пустые строчки(лишние табы, пробелы в первой строке) из файла и залейте его обратно.

Заметки разработчика: Битрикс не выводит капчу

23 апреля 2020

Просмотры
8354

Столкнулись с интересной проблемой на одном из клиентских сайтов. Не отображается изображение контрольного слова для проверки (captcha).

Многие владельцы сайтов на 1С-Битрикс не раз видели при входе в административный раздел сайта, в форме авторизации предложение «Введите слово на картинке».

Этот же механизм используется и в публичной части сайта при регистрации пользователей, авторизации. Но он как и всё остальное, может работать не корректно.

Сегодня столкнулись с проблемой, когда на сайте клиента картинка с кодовым словом просто не отображается. Ситуация решилась достаточно быстро, суть проблемы заключалась в лишнем выводе символов в файле /bitrix/php_interface/dbconn.php. В конце файла был просто символ пробела. Такая же проблема может возникнуть и файле /bitrix/php_interface/init.php. Эти файлы не должны выводить каких либо символов, строго php код.

Кстати говоря эта же ситуация может привести к тому, что сайт будет не корректно отображаться в браузерах при включенной компрессии на сайте.

Надеемся, что помогли Вам!

Отсутствие изображений каптчи (CAPTHA) в битриксе.

На днях возникла проблема с отображением CAPTCHA

Начал разбирать ситуацию. Проблем с правами и доступом к разделу /bitrix/tools/ не было.

Далее в процессе поиска решения, натыкался на статьи, которые говорили об открывающих и закрывающих тегах php в служебных файлах.

Скорее всего проблема может быть и там, но в моем случае она заключалась в другом, хотя я и проверил предыдущие рекомендации.

Один из интернет-пользователей aVadim описал ситуацию следующим образом:

«Если кому интересно, то проблема была в том, что конфиг одного из плагинов был сохранен в формате «UTF-8 c BOM».

Казалось бы, при чем тут капча? Я понимаю это так: сайт работает на niginx + php-fpm. И при загрузке файлов конфига, загружался, кроме прочего, и этот файл с BOM, и эти злосчастные три байта улетали в выходной буфер сервера. А потом, при выводе сгенерированной движком капчи, они встраивались в бинарный изображения, ломая формат картинки.

Интересно то, что при работе с apache в подобных случаях возникают ошибки от того, что идет отправка заголовков функцией header(), в то время как уже пошел вывод клиенту. А вот nginx, видимо, работает иначе, BOM-коды буферизирует, но клиенту сразу не отправляет, поэтому ошибок явных при использовании header() не возникает.»

Благодарен за решение, потому как именно пересохранение файлов /bitrix/php_interface/dbconn.php, /bitrix/php_interface/after_connect_d7.php, и /bitrix/php_interface/after_connect.php в формате UTF-8 без BOM решило мою проблему.

Успехов вам и быстрых поисков возникших проблем!

Представляю Вашему вниманию короткую статью о том, как искать объяснение непонятных явлений в битриксе. В качестве примера приведу историю — когда-то, еще на заре изучения системы, мне удалось вывести в форме авторизации капчу. Причем как это вышло, выяснить не получилось. И вот сейчас, кастомизируя очередной шаблон компонента авторизации, обнаружился код ее выводящий. Спортивный интерес и отсутствие информации в официальной документации (хотя вполне может быть, я просто не нашел то что нужно) подтолкнули меня на маленькое расследование.

Первым делом, надо посмотреть в шаблоне компонента элемент массива, в котором приходит флаг показа капчи — несложно увидеть, что это $arResult[«CAPTCHA_CODE»]. Массив arResult формируется внутри компонента, поэтому следующим шагом стало изучение содержимого bitrix\components\bitrix\system.auth.form\component.php. Найденный фрагмент кода показал, что за капчу отвечает функция NeedCAPTHAForLogin, которая по логину пользователя решает, выводить ее или нет.

if($APPLICATION->NeedCAPTHAForLogin($arResult["USER_LOGIN"]))
{
    $arResult["CAPTCHA_CODE"] = $APPLICATION->CaptchaGetCode();
}
else
{
    $arResult["CAPTCHA_CODE"] = false;
}

Api-help битрикса о назначении NeedCAPTHAForLogin рассказывать отказался, в настройках пользователя заветной галочки не оказалось. Остается найти и посмотреть исходник этой загадочной функции. С помощью Total Commander (или аналога) в директории bitrix\modules\main\ ищем файлы, содержащие текст NeedCAPTHAForLogin. Напомню, что такие исследования доступны счастливым обладателям версии в исходных кодах. Итак, результат поиска — файлик \bitrix\modules\main\classes\general\main.php. Находим кусок кода функции NeedCAPTHAForLogin, который ставит все точки над i

if(strlen($login) > 0)
{
    $rsUser = CUser::GetList($o, $b, array("LOGIN_EQUAL_EXACT" => $login));
    $arUser = $rsUser->Fetch();
    if($arUser)
    {
        $arPolicy = CUser::GetGroupPolicy($arUser["ID"]);
        $POLICY_ATTEMPTS = intval($arPolicy["LOGIN_ATTEMPTS"]);
        $USER_ATTEMPTS = intval($arUser["LOGIN_ATTEMPTS"]);
    }
}

Оказывается, вывод капчи в форме авторизации регулируется в настройках групповой политики неприметной галочкой в самом конце списка.

Приведенный способ иногда действует даже быстрее поиска по документации разработчиков. К тому же, дает возможность посмотреть на систему изнутри, понять принципы ее функционирования, и следовательно, писать более адаптированный код.

Понравилась статья? Поделить с друзьями:

Интересное по теме:

  • Ошибка кариер 1200 out range
  • Ошибка капчи xmeye
  • Ошибка камри р0113
  • Ошибка исчерпан выделенный дисковый ресурс
  • Ошибка капот открыт вольво

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии