Я обновил свой сервер с PHP 5.5 до PHP 7. Теперь Orange HRM не работает.
Производство на hr.oyasys.com . Ошибка происходит только после входа в систему (http://hr.oyasys.com/index.php/dashboard)
stack trace
at ()
in SF_ROOT_DIR/lib/vendor/symfony/lib/controller/sfController.class.php line 182 ...
if ($this->getActionStack()->getSize() >= $this->maxForwards)
{
// let's kill this party before it turns into cpu cycle hell
throw new sfForwardException('Too many forwards have been detected for this request.');
}
Я не думаю, что OrangeHRM учел обновления PHP 7. Функции mysql_ * также были удалены, и я столкнулся с ошибкой или установкой.
https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7
OrangeHRM использует наследство mysql_connect
расширение, которое устарело в PHP 5.5 и полностью удалено из PHP 7.
Если вам нужно запустить OrangeHRM, вам придется понизить версию PHP до 5.x или переместить OrangeHRM на другой совместимый сервер.
Я решил таким образом установить orangehrm 3.3.0 на Ubuntu 16.04
Добавлен репозиторий PPA
sudo add-apt-repository ppa: ondrej / php
Установил php5.6
sudo apt-get update
sudo apt-get установить php5.6
Установлено несколько модулей
sudo apt-get установить php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml
Включен модуль php 5.6 в apache2
Установка работает нормально
Понижение рейтинга на самом деле не решает проблему, оно просто работает вокруг проблемы. Есть много людей, которые не могут просто понизить версию из-за ограничений, связанных с другим программным обеспечением, а в некоторых случаях — политикой ИТ.
Это отстой, но мы не получим никакой любви или реального решения, пока OrangeHRM не внесет изменения, необходимые для поддержки работы под PHP 7.