IlyaADM

Эл. почта: Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.

Суббота, 01 Ноябрь 2025 21:51

Установка системных компонент

В этом разделе описана установка необходимых для ИПС компонент, таких как СУБД, PHP и другие.

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

Для корректного функционирования ИПС «ИНФОКОММ-ПАМЯТЬ» необходимо установить следующие компоненты:

    • MySQL версии 8.0.42 или новее;
    • PHP версии не ниже 7.4.33;
    • Python версии не ниже 3.10.12;
    • Web Server Apache2.
    • 5. Chromium браузер

MySQL.

Репозиторий ubuntu 20 по умолчанию содержит mysql-server-8.0, рекомендуем эту версию не менять. Для ее установки введите

sudo apt install mysql-server
sudo systemctl start mysql
sudo systemctl enable mysql

После установки желательно выполнить дополнительную настройку СУБД для достижения максимальной производительности поисковых запросов. Для этого необходимо добавить в файл /etc/mysql/my.cnf следующие настройки:

long_query_time=10 
connect_timeout=600
net_read_timeout=600
net_write_timeout=600
max_allowed_packet=64M
max_connections=600
symbolic-links=0
key_buffer_size=128M
thread_stack=16M
thread_cache_size=50
sort_buffer_size=4M
read_buffer_size=1M
read_rnd_buffer_size=1M
join_buffer_size=2M
tmp_table_size=256M
innodb_buffer_pool_size=6GB
max_heap_table_size=256M
innodb_flush_log_at_trx_commit = 2
sync_binlog = 0
innodb_flush_method = O_DIRECT
innodb_io_capacity = 100
innodb_io_capacity_max = 200

PHP.

PHP необходим версии не ниже 7.4.33. Более ранние версии не поддерживаются. Необходимо установить php и требуемый набор расширений (см. список расширений PHP).

Список расширений PHP:

apt install php7.4 php7.4-mbstring php7.4-xml php7.4-gd php7.4-mysqli

Python

Подходит Python 3.10.12 и новее. Если у вас версия Python ниже 3.9, то вам нужно обновить Python. Для установки python введите

sudo apt install python3

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

venv
pip

Кроме того, для корректной работы расширений установите браузер chromium

sudo apt install chromium

Потребуется установка следующих расширений python3:

pip3 install pandas numpy openpyxl XlsxWriter reportlab pdf2image pyaspeller
pyppeteer tqdm

Apache2

Установка веб-сервера Apache на Ubuntu — это простой процесс, включающий в себя выполнение одной команды и перезагрузку системы. Чтобы установить Apache, выполните следующую команду:

sudo apt install apache2 libapache2-mod-php7.4

Для добавления Apache в автозагрузку выполните команду:

sudo systemctl enable apache2

Установка ИПС

Удалите все файлы в каталоге /var/www/html и скопируйте архив с программой в эту же папку. Образы изображений копировать в папку /var/www/html/upload/rip2 Делегируйте права на папку с программой веб-серверу при помощи команды

chown www-data:www-data -R /var/www/html
chmod 755 -R /var/www/html

Настройка базы данных

При помощи команды sudo mysql получите доступ к терминалу mysql. Создайте пользователя dbuser, через которого будет работать программа с базой, и укажите ему пароль.

CREATE USER 'dbuser'@'localhost' IDENTIFIED BY 'password';
#Создайте пустую базу данных
CREATE DATABASE dead2 DEFAULT CHARACTER SET utf8 DEFAULT
COLLATE utf8_general_ci;

Выйдите из терминала mysql и восстановите базу данных из архива с программой sudo mysql < /директория/хранения/резервной/копии/dead2.sql В терминале mysql назначьте права пользователю dbuser на эту базу данных

GRANT ALL PRIVILEGES dead2.* TO ' dbuser'@'localhost';
FLUSH PRIVILEGES;

Настройка подключения программы к базе данных

Для корректного подключения базы измените в файле /var/www/html/config имя пользователя и пароль, созданного ранее пользователя базы данных.

'username' => 'dbuser',
'password' => 'password',

Перезапустите сервер apache2

sudo systemctl restart apache2

Если вы все сделали правильно, то можно открывать в браузере localhost и авторизоваться в систему admin/admin.