+7 495 008 8452 пн.-пт. 10:00 – 17:00
Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.


Боты не дремлют! Незащищенные формы регистрации сравнительно легко взломать злоумышленникам. Последствия будут нерадостными, как минимум ваш ресурс и почтовый ящик завалят спамом. Защита всем известна, любима администраторами, люто ненавистна хакерам и пользователям. Это CAPTCHA.

Ее использование, конечно, не обходится без нюансов. Некоторые вопросы подключения, настройки, использования CAPTCHA мы рассмотрим ниже.

 

1. Не отображается CAPTCHA. Что делать?

А) Убедитесь, что необходимые библиотеки подключены.

Перейдите в раздел Рабочий стол\Настройки\Инструменты\Проверка сайта

И найдите там библиотеки «FreeType library» и «GD». Если они выделены зеленым цветом, то все в порядке. Если отмечены красным, то их надо установить. Выполните это сами или обратитесь к хостеру.

Б) Проверьте, работает ли защитный модуль Suhosin.

Используйте для проверки phpinfo(). Если Suhosin действительно включен, его надо перевести в режим эмуляции директивой

php_value suhosin.simulation On

в файле .htaccess в корневом каталоге сайта.

В) Убедитесь, что управляющие файлы не содержат лишних строк. Проверьте

/bitrix/php_interface/init.php
/bitrix/php_interface/<SITE_ID>/init.php
/bitrix/php_interface/dbconn.php
/bitrix/php_interface/after_connect.php

на наличие примерно такого кода:

<?
//code
?>

Если он есть, удалите лишние переносы строк.

 

2. Как добиться, чтобы CAPTCHA показывала только цифры?

Используйте форму настройки по адресу /bitrix/admin/captcha.php?lang=ru

Либо модифицируйте компонент регистрации system.auth.registration. Найдите в нем фрагмент кода
if ($arResult["USE_CAPTCHA"])
{
$arResult["CAPTCHA_CODE"] = htmlspecialchars($GLOBALS["APPLICATION"]->CaptchaG­etCode());
}

И замените на другой

if ($arResult["USE_CAPTCHA"])
{
include($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules­/main/classes/general/captcha.php");
$GLOBALS['cpt'] = new CCaptcha();
$GLOBALS['cpt']->SetCodeChars(array('1','2','3','4­','5','6','7','8','9'));
$GLOBALS['cpt']->SetCode();
$arResult["CAPTCHA_CODE"]=htmlspecialchars($GLOBAL­S['cpt']->GetSID());
}

 

3. Как изменить размер картинки CAPTCHA?

Стандартный компонент «1С-Битрикс» выводит картинку размером 180 на 40 пикселей. Если дизайн сайта требует кастомизировать размеры картинки, отредактируйте шаблон:

/bitrix/components/bitrix/system.auth.form/templates/.defaul/template.php

на 93 строке найдите фрагмент кода

<img src="/bitrix/tools/captcha.php?captcha_sid=<?echo $arResult["CAPTCHA_CODE"]?>" width="180" height="40" alt="CAPTCHA" /><br /><br />

и установите нужные вам значения ширины и высоты (width и height)

 
Спасибо за внимание!
Читайте свежий выпуск «Кладовки программиста» каждый день!


Назад в раздел

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












CAPTCHA