Установка OrangeHrm 3.3.3 и ошибка конфигураций

В течение нескольких дней я пытаюсь установить последнюю стабильную версию 3.3.3 с открытым исходным кодом OrangeHrm на Linux. Я примерил CentOS 7, Сервер Ubuntu 16.04, Сервер Ubuntu 14.04. Все они я установил на VirtualBox. Я следовал другой инструкции, объясненной на различных сайтах. Например.

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

Ошибка происходит после того, как я введу детали базы данных.

Ошибка происходит на install.php и хромовые шоу installerUI.php в dev инструментах.

Я попробовал и существующей пустой базой данных и новой базой данных также. Оба с корневым пользователем DB, а также с другим привилегированным пользователем.

Я был бы предпочтительный любить устанавливать его на CentOS.

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

Любые инструкции и ресурсы были бы высоко ценивший.

0
задан 14 February 2017 в 11:48

1 ответ

У меня была та же проблема. Вот то, как решить его:

Первый, в общем разговор, можно выследить orangehrm.log файл в установке для проверки ошибок. Это будет в Вашей orangehrm папке, после пути ./symfony/log/orangehrm.log (например: /var/www/html/symfony/log/orangehrm.log).

Для меня, это сказало:

Непойманная Ошибка: Звоните в неопределенную функцию mysql_connect ()

, По-видимому, она пытается использовать набор устаревший функций, не доступных на php7.0. Статья Вы отправили использование php5, но в Ubuntu 16.04, например, php7, является значением по умолчанию.

Так, следуйте этой статье для удаления значения по умолчанию php7.0 (если Вам установили его), и установите PHP 5.6:

PHP 5.6 Установки на Гостеприимном (16.04)

Затем сервер Apache перезапуска (sudo service apache2 restart) и проверка Вы версия PHP.

После этого, необходимо будет изменить значение по умолчанию enconding для установки MySQL также, если Ваш будут иметь актуальную версию (MySQL или MariaDB), потому что установка OrangeHRM перестанет работать иначе. Это - обходное решение на самом деле. Начиная с версии 5.5.3, значение по умолчанию enconding измененный на utf8mb4, позволяя меньше символов на ключах, индексах, и т.д. Если Вы не возвращаете его к utf8, Вы будете видеть ошибку , Указанный ключ был слишком длинным; макс. длина ключа составляет 767 байтов во время установки OrangeHRM, не удаваясь составить таблицы, и т.д.

Редактирование следующий файл и указать символьный набор по умолчанию для MySQL:

sudo nano /etc/mysql/my.cnf

Примечание, что этот файл мог бы быть в различных местоположениях. Если Вы не находите его, работаете: mysqld --help --verbose 2> /dev/null | grep -A1 'Default options' для получения других возможных путей.

результат должен быть похожим на это после редактирования файла (это - просто подмножество содержания файла):

# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.

#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

[client]
default-character-set = utf8

[mysql]
default-character-set = utf8

[mysqld]
init-connect='SET NAMES utf8'
collation_server=utf8_unicode_ci
character_set_server=utf8

Другие местоположения/файлы для поиска этой конфигурации:

/etc/mysql/conf.d/*.cnf

И если Вы используете MariaDB:

/etc/mysql/mariadb.conf.d/*.cnf

Ищут любую строку, определяющую набор символов по умолчанию = utf8mb4, и изменяют его на [1 119] набор символов по умолчанию =, utf8

Выполняет следующую команду, чтобы удостовериться, что Вы получили их всех:

mysql --print-defaults

И затем перезапускают Подключение MySQL (sudo service mysql restart).

к MySQL:

sudo mysql -u root -p

Выполнение следующее для проверки текущих символьных установленных значений:

SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';

Теперь, настройте саму базу данных (замените your_db_name, your_db_user и пароль Вашими фактическими значениями):

create database your_db_name CHARACTER SET utf8 COLLATE utf8_unicode_ci;
grant all privileges on your_db_name.* to 'your_db_user'@'localhost' identified by "password";
show databases;
flush privileges;
exit;

Одна последняя вещь: удостоверьтесь, что у Вас есть расширение/модуль php5.6-xml. Установите его, если Вы не делаете (sudo apt-get install php5.6-xml), иначе Вы собираетесь видеть ошибку Фатальная ошибка PHP: Звоните в неопределенную функцию simplexml_load_file () на Ваших журналах, и Вы не сможете войти в OrangeHRM после того, как установка будет сделана.

Наконец, попробуйте установку снова. Удостоверьтесь, что Вы используете "Существующую Пустую Базу данных".

Это - то, как моя страница похожа:

страница

установки базы данных OrangeHRM И вот еще некоторые ссылки:

https://dba.stackexchange.com/questions/59126/set-value-of-character-set-client-to-utf8mb4 https://dba.stackexchange.com/questions/76788/create-a-database-with-charset-utf-8 https://dev.mysql.com/doc/refman/5.7/en/charset-connection.html

0
ответ дан 15 April 2019 в 22:45

Другие вопросы по тегам:

Похожие вопросы: