Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: не работает Captcha  (Прочитано 1085 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sergmoro1

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
не работает Captcha
« : 09 Июля 2014, 12:59:29 »
Добрый день!

сайт стоял раньше на виртуальном хостинге и все было нормально.
нужно было перейти на VPS.
загружено все, что полагается, для работы веб-сервера.
залил сайт и вдруг перестала работать Captcha.
библиотека GD на месте, как, вроде и все остальное - http://tuz16.ru/info.php (вывод phpinfo())
Видимо что-то не учел в настройках сервера, но где искать?

# php5 -v
PHP 5.5.9-1ubuntu4.2 (cli) (built: Jun 25 2014 17:17:37)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies

# apache2 -v
Server version: Apache/2.4.7 (Ubuntu)
Server built:   Apr  3 2014 12:20:28

Оффлайн sergmoro1

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: не работает Captcha
« Ответ #1 : 10 Июля 2014, 15:56:00 »
Проблема оказалась в наличии BOM кода всего в одном файле - /protected/config/main.php.
Чтобы проверить все файлы на наличие этого кода (будь он трижды неладен) написал рекурсивную
программу, которая проверяет все файлы, во всех каталогах, начиная с корня.
Чтобы запустить ее достаточно положить программу в корневой каталог сайта и вызвать в браузере.

Код: (php) [Выделить]
<?php
function hasBOM($text)
{
    return (
substr($text03) == pack('CCC'0xef0xbb0xbf));
}
 
function 
check($dir)
{
    if(
is_dir($dir) && ($dh opendir($dir)))
    {
        while ((
$file readdir($dh)) !== false)
        {
            if(
$file <> '.' && $file <> '..')
            {
                if(
is_dir($dir '/' $file))
                    
check($dir '/' $file);
                else
                {
                    if(
hasBOM(file_get_contents($dir '/' $file)))
                        echo 
$dir '/' $file '<br>';
                }
            }
        }
        
closedir($dh);
    }
}

check(dirname(__FILE__));
?>


Программа выводит список файлов, пораженных этой "болезнью".
Имеет смысл обращать внимание только на .php файлы.

 

Страница сгенерирована за 0.019 секунд. Запросов: 21.