Страница 1 из 2

Не запускается FreePBX после обновления PHP

Добавлено: 18 фев 2017, 11:38
phantom
Добрый день,
Предыдущая версия php 5.4.16 обновлял до 5.6.
Все началось с того, что решил обновить Framework FreePBX 13.0.190.5 до версии 13.0.190.10.
Обновление прошло успешно.
При входе в административную панель, выходит ошибка типа PHP устарел:

Код: Выделить всё

exit: 255
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Unable to continue. Cron line added didn't remain in crontab on final check in /var/www/html/admin/libraries/BMO/Cron.class.php on line 113
#0 /var/www/html/admin/libraries/BMO/Cron.class.php(180): FreePBX\Cron->addLine('@weekly /var/li...')
#1 /var/www/html/admin/libraries/utility.functions.php(626): FreePBX\Cron->add('@weekly /var/li...')
#2 /var/www/html/admin/modules/queues/functions.inc/cron.php(80): edit_crontab('', Array)
#3 /var/www/html/admin/modules/queues/functions.inc/dialplan.php(18): queues_set_backup_cron()
#4 /var/www/html/admin/libraries/BMO/DialplanHooks.class.php(95): queues_get_config('asterisk')
#5 /var/lib/asterisk/bin/retrieve_conf(864): FreePBX\DialplanHooks->processHooks('asterisk', Array)
#6 {main}
Побоялся обновлять до 7 версии, решил 5.6.

Смотрю версию PHP:

Код: Выделить всё

 PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
PHP 5.4.16 (cli) (built: Jun 23 2015 21:17:27)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend Guard Loader v3.3, Copyright (c) 1998-2013, by Zend Technologies 
Удалил старый PHP командой: yum remove php-common
и все его зависимости:

Код: Выделить всё

 Удаление:
 php-common                                      x86_64                                    5.4.16-36.el7_1                                     @base                                    3.8 M
Удаление зависимостей:
 php                                             x86_64                                    5.4.16-36.el7_1                                     @base                                    4.4 M
 php-cli                                         x86_64                                    5.4.16-36.el7_1                                     @base                                    8.8 M
 php-gd                                          x86_64                                    5.4.16-36.el7_1                                     @base                                    342 k
 php-mbstring                                    x86_64                                    5.4.16-36.el7_1                                     @base                                    1.3 M
 php-mysql                                       x86_64                                    5.4.16-36.el7_1                                     @base                                    232 k
 php-pdo                                         x86_64                                    5.4.16-36.el7_1                                     @base                                    192 k
 php-pear                                        noarch                                    1:1.9.4-21.el7                                      @base                                    2.2 M
 php-process                                     x86_64                                    5.4.16-36.el7_1                                     @base                                     78 k
 php-xml 


ПРЕДУПРЕЖДЕНИЕ: база данных RPM была изменена вне Yum.
  Удаление    : 1:php-pear-1.9.4-21.el7.noarch                                                                                                                                           1/10
  Удаление    : php-5.4.16-36.el7_1.x86_64                                                                                                                                               2/10
  Удаление    : php-cli-5.4.16-36.el7_1.x86_64                                                                                                                                           3/10
  Удаление    : php-process-5.4.16-36.el7_1.x86_64                                                                                                                                       4/10
  Удаление    : php-xml-5.4.16-36.el7_1.x86_64                                                                                                                                           5/10
  Удаление    : php-mysql-5.4.16-36.el7_1.x86_64                                                                                                                                         6/10
  Удаление    : php-pdo-5.4.16-36.el7_1.x86_64                                                                                                                                           7/10
  Удаление    : php-gd-5.4.16-36.el7_1.x86_64                                                                                                                                            8/10
  Удаление    : php-mbstring-5.4.16-36.el7_1.x86_64                                                                                                                                      9/10
  Удаление    : php-common-5.4.16-36.el7_1.x86_64                                                                                                                                       10/10
предупреждение: /etc/php.ini сохранен как /etc/php.ini.rpmsave
  Проверка    : php-process-5.4.16-36.el7_1.x86_64                                                                                                                                       1/10
  Проверка    : php-mbstring-5.4.16-36.el7_1.x86_64                                                                                                                                      2/10
  Проверка    : php-5.4.16-36.el7_1.x86_64                                                                                                                                               3/10
  Проверка    : php-cli-5.4.16-36.el7_1.x86_64                                                                                                                                           4/10
  Проверка    : php-pdo-5.4.16-36.el7_1.x86_64                                                                                                                                           5/10
  Проверка    : php-gd-5.4.16-36.el7_1.x86_64                                                                                                                                            6/10
  Проверка    : php-xml-5.4.16-36.el7_1.x86_64                                                                                                                                           7/10
  Проверка    : php-mysql-5.4.16-36.el7_1.x86_64                                                                                                                                         8/10
  Проверка    : php-common-5.4.16-36.el7_1.x86_64                                                                                                                                        9/10
  Проверка    : 1:php-pear-1.9.4-21.el7.noarch                                                                                                                                          10/10

Удалено:
  php-common.x86_64 0:5.4.16-36.el7_1

Удалены зависимости:
  php.x86_64 0:5.4.16-36.el7_1       php-cli.x86_64 0:5.4.16-36.el7_1   php-gd.x86_64 0:5.4.16-36.el7_1        php-mbstring.x86_64 0:5.4.16-36.el7_1   php-mysql.x86_64 0:5.4.16-36.el7_1
  php-pdo.x86_64 0:5.4.16-36.el7_1   php-pear.noarch 1:1.9.4-21.el7     php-process.x86_64 0:5.4.16-36.el7_1   php-xml.x86_64 0:5.4.16-36.el7_1
 
Устанавил php 5.6, командой yum --disablerepo=\* --enablerepo=webtatic install -y php56w php56w-opcache
отдельно установил php56w-mysql

Теперь FreePBX вообще не работает:

Код: Выделить всё

 amportal chown

Please wait...
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value

PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
PHP Fatal error:  Call to undefined function posix_getpwuid() in /var/lib/asterisk/bin/gen_amp_conf.php on line 6
/var/lib/asterisk/bin/freepbx_engine: line 222: /var/lib/asterisk/bin/freepbx_engine_hook_ucp: Нет такого файла или каталога
!!!!amportal is depreciated. Please use fwconsole!!!!
forwarding all commands to 'fwconsole'
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
PHP Fatal error:  Call to undefined function FreePBX\Console\Command\posix_geteuid() in /var/www/html/admin/libraries/Console/Chown.class.php on line 137
Whoops\Exception\ErrorException: Call to undefined function FreePBX\Console\Command\posix_geteuid() in file /var/www/html/admin/libraries/Console/Chown.class.php on line 137
Stack trace:
  1. () /var/www/html/admin/libraries/Console/Chown.class.php:137
[root@localhost /]# amportal a ma refreshsignatures

Please wait...
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value

PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
PHP Fatal error:  Call to undefined function posix_getpwuid() in /var/lib/asterisk/bin/gen_amp_conf.php on line 6
/var/lib/asterisk/bin/freepbx_engine: line 222: /var/lib/asterisk/bin/freepbx_engine_hook_ucp: Нет такого файла или каталога
!!!!amportal is depreciated. Please use fwconsole!!!!
forwarding all commands to 'fwconsole'
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
Getting Data from Online Server...
Done
Checking Signatures of Modules...
Checking asteriskinfo...
PHP Fatal error:  Call to undefined function FreePBX\posix_getpwnam() in /var/www/html/admin/libraries/BMO/GPG.class.php on line 665
Whoops\Exception\ErrorException: Call to undefined function FreePBX\posix_getpwnam() in file /var/www/html/admin/libraries/BMO/GPG.class.php on line 665
Stack trace:
  1. () /var/www/html/admin/libraries/BMO/GPG.class.php:665
[root@localhost /]# amportal a reload

Please wait...
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value

PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
PHP Fatal error:  Call to undefined function posix_getpwuid() in /var/lib/asterisk/bin/gen_amp_conf.php on line 6
/var/lib/asterisk/bin/freepbx_engine: line 222: /var/lib/asterisk/bin/freepbx_engine_hook_ucp: Нет такого файла или каталога
!!!!amportal is depreciated. Please use fwconsole!!!!
forwarding all commands to 'fwconsole'
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
Reloading FreePBX
Error(s) have occured, the following is the retrieve_conf output:
exit: 255
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so:  /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value
PHP Fatal error:  Call to undefined function FreePBX\posix_getpwnam() in /var/www/html/admin/libraries/BMO/GPG.class.php on line 665
Whoops\Exception\ErrorException: Call to undefined function FreePBX\posix_getpwnam() in file /var/www/html/admin/libraries/BMO/GPG.class.php on line 665
Stack trace:
  1. () /var/www/html/admin/libraries/BMO/GPG.class.php:665
 
Посоветуйте что нужно сделать?

Re: Не запускается FreePBX после обновления PHP

Добавлено: 18 фев 2017, 11:54
zzuz

Код: Выделить всё

Comments starting with '#' are deprecated in /etc/php.d/ZendGuard.ini on line 1 in Unknown on line 0
Поправьте конфиг для начала .

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 11:44
phantom
Устранил вот эту ошибку:
Failed loading /usr/lib64/php/modules/ZendGuardLoader.so: /usr/lib64/php/modules/ZendGuardLoader.so: undefined symbol: zend_get_hash_value

Установил зависимости:
yum -y install php56w-common php56w-gd php56w-mbstring php56w-mcrypt php56w-xml php56w-process php56w-pecl-geoip php56w-imap php56w-pecl-xdebug php56w-pecl-memcache php56w-cli php56w-pdo

Как я писал выше до этого я уже установил: php56w php56w-opcache php56w-mysql поэтому я убрал из списка.

Восстановил работу ZendGuardLoader
Проверил установлен он или нет:
yum search ZendGuard
и
yum provides "*ZendGuard"

Ничего не нашел.

Скачал, т.к у меня 64-x битная CentOS 7:
wget http://downloads.zend.com/guard/7.0.0/z ... _64.tar.gz

для 32-х битной:
wget http://downloads.zend.com/guard/7.0.0/z ... 386.tar.gz

Распаковал в /usr/lib64/php/
tar xzvf zend-loader-php5.6-linux-x86_64.tar.gz -C /usr/lib64/php/

Изменил запись загрузку модуля в файле /etc/php.d/zend.ini:
zend_extension=/usr/lib64/php/ZendGuardLoader-php-5.6-linux-glibc23-x86_64/php-5.6.x/ZendGuardLoader.so - здесь нужно быть внимательным проверить пути убедится в правильная ссылка на файл.
zend_loader.enable=1

Но проблема так и осталась, теперь при входе в веб FreeBPX загружает только шапку с ошибкой:
Whoops \ Exception \ ErrorException (E_WARNING)
Unknown: open(/var/lib/php/session/sess_sp3mja10csmnqbjf5dil59g8n2, O_RDWR) failed: Permission denied (13)

HTTP в логах пишет:
[Sun Feb 19 16:31:17.295887 2017] [mpm_prefork:notice] [pid 31461] AH00163: Apache/2.4.6 (CentOS) PHP/5.6.30 configured -- resuming normal operations
[Sun Feb 19 16:31:17.295957 2017] [core:notice] [pid 31461] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
[Sun Feb 19 16:31:46.298972 2017] [authz_core:error] [pid 31463] [client 192.168.1.202:53678] AH01630: client denied by server configuration: /var/www/html/index.html
[Sun Feb 19 16:31:46.347711 2017] [authz_core:error] [pid 31463] [client 192.168.1.202:53678] AH01630: client denied by server configuration: /var/www/html/admin/index.html

* детально расписываю, потому-что появится человек столкнувшийся с такой же проблемой, чтобы ему быстрее было куда копать эта инфа пригодится.

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 11:59
zzuz

Код: Выделить всё

chown -R <пользователь_апача>:<группа_апача> /var/lib/php/session/ 
Научитесь уже читать , что вам пишет система.

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 12:02
phantom
Сделал как вы сказали, теперь другая ошибка: /­var/­www/­html/­admin/­libraries/­BMO/­GPG.class.php665

Изображение

Я так понимаю FreePBX потерял связь с MySQL только проверить не знаю как(

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 12:08
zzuz
В платный суппорт.

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 12:47
phantom
Ввожу команду amportal a m
Выдает следующее:

Код: Выделить всё

Please wait...

PHP Fatal error:  Call to undefined function posix_getpwuid() in /var/lib/asterisk/bin/gen_amp_conf.php on line 6
/var/lib/asterisk/bin/freepbx_engine: line 222: /var/lib/asterisk/bin/freepbx_engine_hook_ucp: Нет такого файла или каталога
!!!!amportal is depreciated. Please use fwconsole!!!!
forwarding all commands to 'fwconsole'
Connecting to the Database...
!!!!amportal is depreciated. Please use 'fwconsole a m'!!!!
[root@localhost php.d]# Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 118
Server version: 5.5.52-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [asterisk]> Bye
Далее выполняю команду fwconsole restart

Код: Выделить всё

PHP Fatal error:  Call to undefined function FreePBX\Console\Command\posix_geteuid() in /var/www/html/admin/libraries/Console/Restart.class.php on line 24
Whoops\Exception\ErrorException: Call to undefined function FreePBX\Console\Command\posix_geteuid() in file /var/www/html/admin/libraries/Console/Restart.class.php on line 24
Stack trace:
  1. () /var/www/html/admin/libraries/Console/Restart.class.php:24
Пользователи и БД в MariaDB есть

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 13:17
phantom
Что интересно в WEB не работает только админ панель, а UCP нормально работает.

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 16:50
phantom
Все еще веду бой, не знаю на сколько меня хватит.

Удалось решить проблему с ошибками, что были выше. Оказывается не хватало пакета php56w-pear. В первый раз он почему-то не установился. Теперь админка работает но нет связи у FreePBX с Asterisk.
При выполнении команды amportal chown - Успешно.
При выполнении команды amportal a ma refreshsignatures - только одна ошибка "Signature Invalid. Could not find signed module on remote server!"
При выполнении команды amportal a reload - ошибки:
/var/lib/asterisk/bin/freepbx_engine: line 222: /var/lib/asterisk/bin/freepbx_engine_hook_ucp: Нет такого файла или каталога
!!!!amportal is depreciated. Please use fwconsole!!!!
forwarding all commands to 'fwconsole'
Reloading FreePBX
Error(s) have occured, the following is the retrieve_conf output:
exit: 255
Unable to continue. Cron line added didn't remain in crontab on final check in /var/www/html/admin/libraries/BMO/Cron.class.php on line 113
#0 /var/www/html/admin/libraries/BMO/Cron.class.php(180): FreePBX\Cron->addLine('@weekly /var/li...')
#1 /var/www/html/admin/libraries/utility.functions.php(626): FreePBX\Cron->add('@weekly /var/li...')
#2 /var/www/html/admin/modules/queues/functions.inc/cron.php(80): edit_crontab('', Array)
#3 /var/www/html/admin/modules/queues/functions.inc/dialplan.php(18): queues_set_backup_cron()
#4 /var/www/html/admin/libraries/BMO/DialplanHooks.class.php(95): queues_get_config('asterisk')
#5 /var/lib/asterisk/bin/retrieve_conf(864): FreePBX\DialplanHooks->processHooks('asterisk', Array)
#6 {main}

Проверил пароли в amportal.conf и manager.conf и freepbx.conf одинаковые. Может стоит поменять пароли у пользователей в MariaDB?

Re: Не запускается FreePBX после обновления PHP

Добавлено: 19 фев 2017, 16:54
ded
Причина:
phantom писал(а): решил обновить Framework FreePBX 13.0.190.5 до версии 13.0.190.10.
phantom писал(а):Что интересно в WEB не работает только админ панель, а UCP нормально работает.
Цитата формы регистрации на форуме:
Ваш вопрос может быть не интересен остальным, даже если Вы его таким называете. Вы можете называть свой вопрос интересным для того, чтобы убедить других в необходимости решить за Вас Вашу проблему. Глупо надеяться, что другие не знают об этом. Вопрос может быть интересен тогда и только тогда, когда ответ на этот вопрос еще не найден, например, в других топиках данного форума или на других сайтах. Если ответ уже где-то описан, то он не может быть интересным. Если вопрос может быть интересным, то это не означает, что он является интересным. Ответы на стандартные вопросы, которые можно найти в документации – это побочный эффект, а не обмен знаниями или опытом. «Обмен знаниями» подразумевает, что Вы не только получаете знания, но и что-то даете взамен. Например, формулируете новые, ранее нигде не сформулированные вопросы. Если Вы сообщаете в форуме, что «форум нужен для обмена знаниями, навыками, опытом», помните, что обмен – это когда что-то меняют на что-то. Перед тем, как бросить кому-то подобное заявление, постарайтесь хотя бы для себя ответить на вопрос: «а что я даю взамен?» Суть любого технического форума – это обмен знаниями, навыками, опытом. В частности – опытом пользования документацией, опытом самостоятельного получения информации и – самое главное – самостоятельного поиска ошибок в своих программах.