graliv

Узнать какой модуль глючит?

Рекомендуемые сообщения

graliv    10

Подглючивает сайт, иногда выдает 500 ошибку, не открывает страницы.

Вот что написал хостер:

Ошибка, которая у вас возникает на сайте в логах фиксируется следующим образом:

[Wed Jan 20 14:25:21.463679 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: PHP Fatal error: Uncaught exception 'E_WARNING' with message 'fread(): Length parameter must be greater than 0' in /var/www/graliv/data/www/graliv.net/system/library/agoo/cache.php:148
[Wed Jan 20 14:25:21.463769 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: Stack trace:
[Wed Jan 20 14:25:21.463836 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #0 [internal function]: PHP_Exceptionizer_Catcher->handler(2, 'fread(): Length...', '/var/www/graliv...', 148, Array)
[Wed Jan 20 14:25:21.463884 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #1 /var/www/graliv/data/www/graliv.net/system/library/agoo/cache.php(148): fread(Resource id #201, 0)
[Wed Jan 20 14:25:21.463943 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #2 /var/www/graliv/data/www/graliv.net/system/library/agoo/cache.php(94): agooCache->get_agoo('blog.module.vie...')
[Wed Jan 20 14:25:21.463996 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #3 /var/www/graliv/data/www/graliv.net/catalog/controller/module/blog.php(449): agooCache->__call('get', Array)
[Wed Jan 20 14:25:21.464050 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #4 /var/www/graliv/data/www/graliv.net/catalog/controller/module/blog.php(449): agooCache->get('blog.module.vie...')
[Wed Jan 20 14:25:21.464108 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #5 /var/www/graliv/data/www/graliv.net/vqmod/vqcache/vq2-system_engine_controller.php(63): ControllerModuleBlog->index(Array)
[Wed Jan 20 14:25:21.464168 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #6 /var/www/graliv/data/www/graliv.net/catalog/controller/common/column_left.php(72): Controller->getChild('module/blog', Array)
[Wed Jan 20 14:25:21.464217 2016] [cgi:error] [pid 6742] [client 51.255.65.8:38142] AH01215: #7 /var/www/graliv/data in /var/www/graliv/data/www/graliv.net/system/library/agoo/cache.php on line 148
(END)
 
Судя по всему, движку вашего сайта не удается прочитать зашифрованный файл, поэтому он возвращает результат с отрицательной длиной. В журнале веб-сервера Apache у вас ошибки связанные с загрузкой модуля ioncube_loader, которая занимается дешифровкой обфусцированного текста:
 
Failed loading /usr/local/ioncube/ioncube_loader_lin_5.3.so: /usr/local/ioncube/ioncube_loader_lin_5.3.so: undefined symbol: execute
PHP: syntax error, unexpected '=' in /etc/php5/apache2/php.ini on line 5
 
Загрузка модуля у вас включена следующими директивами в файле /etc/php5/apache2/php.ini:
[Zend]
zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3.so
zend_extension_ts = /usr/local/ioncube/ioncube_loader_lin_5.3_ts.so
echo 'zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.3.so'
echo 'zend_extension_ts=/usr/local/ioncube/ioncube_loader_lin_5.3.so'
 
Вопрос, как узнать какой модуль дает сбой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

Вообще странное поведение...

А "кто" пишет в кеш файл "шифровки" :?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
graliv    10

Вообще странное поведение...

А "кто" пишет в кеш файл "шифровки" :?

Марк, ты знаешь мой уровень знаний)

Я представления не имею кто пишет в кеш шифровки -)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

del - увидел сам

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
graliv    10

del - увидел сам

Версия 1.5.5.1.2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

Очень интересно "кто"

К тому же мой модуль не закодирован ioncube

Вот теперь как разобраться ?

Разработчики, когда вы уже поймете, что кодировать ioncube - это зло
Потом ваши ошибки не найти никому

Или придется взламывать его и за это будет платить пользователь уже

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
graliv    10

Очень интересно "кто"

К тому же мой модуль не закодирован ioncube

Вот теперь как разобраться ?

Разработчики, когда вы уже поймете, что кодировать ioncube - это зло

Потом ваши ошибки не найти никому

Или придется взламывать его и за это будет платить пользователь уже

Может отключать поочереди модули использующие ионкубе?

Я так понимаю ионкубе используют для защиты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

Может отключать поочереди модули использующие ионкубе?

Я так понимаю ионкубе используют для защиты?

Для защиты от "дурака", а варезники его очень легко взламывают

Вопрос - зачем тогда его кодировать?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
graliv    10

Для защиты от "дурака", а варезники его очень легко взламывают

Вопрос - зачем тогда его кодировать?

 

Печально, но вопрос остается открытым, кто сможет помочь?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

Печально, но вопрос остается открытым, кто сможет помочь?

Давайте переместимся в ЛС

Посмотрю  что там в кеш пишут и кто

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 091

Вопрос, как узнать какой модуль дает сбой?

вот это

Судя по всему, движку вашего сайта не удается прочитать зашифрованный файл, поэтому он возвращает результат с отрицательной длиной. В журнале веб-сервера Apache у вас ошибки связанные с загрузкой модуля ioncube_loader, которая занимается дешифровкой обфусцированного текста:

 

Failed loading /usr/local/ioncube/ioncube_loader_lin_5.3.so: /usr/local/ioncube/ioncube_loader_lin_5.3.so: undefined symbol: execute

PHP: syntax error, unexpected '=' in /etc/php5/apache2/php.ini on line 5

 

Загрузка модуля у вас включена следующими директивами в файле /etc/php5/apache2/php.ini:

[Zend]

zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3.so

zend_extension_ts = /usr/local/ioncube/ioncube_loader_lin_5.3_ts.so

echo 'zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.3.so'

echo 'zend_extension_ts=/usr/local/ioncube/ioncube_loader_lin_5.3.so'

связано с синтаксическими ошибками в php.ini по части подгрузки ioncube, о чем хостер правильно и написал.

исправь, или попроси хостера проверить пути, исправить.

все, что выше - ошибки модуля markimax`а.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

...

все, что выше - ошибки модуля markimax`а.

Ошибки ФС хостера, а не markimax -a  ;)

 

filesize на некоторых настройках ФС серверов  может выдавать отрицательное число :? (не у кого такого не было никогда, хотя используют официально модуль 4900 ИМ, но вот такой попался)

В новой версии поставил проверку на это недоразумение хостеров

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

вот это

...

 

И кстати!

В ocStore 2 тоже стоит там

$data = fread($handle, filesize($files[0]));

И когда filesize возвратит "минус" хостера  будет тоже самое

 

Надо заменить в ocStore 2

На

                $file_size = filesize($files[0]);
                if ($file_size > 0) {
                    $data = fread($handle, $file_size));
                } else {
                    $data = '[]';
                }

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 091

если бы "фс хостера" - был бы срачь от "родного кэша".

а так - там нет ни одного упоминания оного.

значит в твоем модуле что-то не справляется...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

если бы "фс хостера" - был бы срачь от "родного кэша".

 

Не прав ты.

Это даже описано в мануале по функции filesize php

У родного кеша не было такого  "размера файла", который попал под это дело. И не известно при каком размере у хостера начинает отдаваться "минус" при настройках ФС

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 091

У родного кеша не было такого "размера файла", который попал под это дело.

сделай, чтобы и у тебя не было такого :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
markimax    1 382

сделай, чтобы и у тебя не было такого :-)

 

И в ocStore2 надо  заменить $data = fread($handle, filesize($files[0]));

 

Лучший вариант

                $file_size = filesize($files[0]);
                if ($file_size > 0) {
                      if ($file_size > $this->maxfile_length) {
                        unlink($files[0]);
                        $data = '[]';
                    } else {
                        $data = fread($handle, $file_size));
                    }
                } else {
                    $data = '[]';
                }

Тоже может в один прекрасный случай возвратить "минус"

Кстати возможно и возвращает - ответ сервера просто 500 и не видно из-за чего, никто внимания и не обращает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
graliv    10

Заметил, если начинает 500 ошибку писать - чистим кеш - все нормально становится работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу