АРМ РКС PayControl v3 — различия между версиями

Материал из PayControl Wiki
Перейти к: навигация, поиск
(Подключение к БД)
(Centos)
Строка 54: Строка 54:
 
Пример команды для установки драйвера для Ubuntu:
 
Пример команды для установки драйвера для Ubuntu:
 
<syntaxhighlight lang="bash">sudo apt install php7.0-sybase</syntaxhighlight>
 
<syntaxhighlight lang="bash">sudo apt install php7.0-sybase</syntaxhighlight>
====Centos====
+
====CentOS 7====
 +
Команда для предоставления доступа Apache на подключение к другим ресурсам:
 +
<syntaxhighlight lang="bash">setsebool httpd_can_network_connect 1</syntaxhighlight>
 
<syntaxhighlight lang="bash">sudo yum install epel-release php-soap
 
<syntaxhighlight lang="bash">sudo yum install epel-release php-soap
 
sudo yum install php-mssql
 
sudo yum install php-mssql
Строка 65: Строка 67:
 
Файл:Centos pdo mssql.png|Подключённый MSSQL как PDO в PHP
 
Файл:Centos pdo mssql.png|Подключённый MSSQL как PDO в PHP
 
</gallery>
 
</gallery>
 +
====CentOS 8====
 +
Команда для предоставления доступа Apache на подключение к другим ресурсам:
 +
<syntaxhighlight lang="bash">setsebool httpd_can_network_connect 1</syntaxhighlight>
 +
Установка PHP и драйверов:
 +
<syntaxhighlight lang="bash">
 +
sudo su
 +
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
 +
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
 +
dnf install yum-utils
 +
dnf module reset php
 +
dnf module install php:remi-7.2
 +
subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
 +
dnf update
 +
dnf install php-pdo php-pear php-devel
 +
</syntaxhighlight>
 +
 
====MS Windows====
 
====MS Windows====
 
=====Вариант 1. Развёртывание Apache и PHP самостоятельно=====
 
=====Вариант 1. Развёртывание Apache и PHP самостоятельно=====

Версия 17:15, 15 июня 2020

АРМ РКС представляет из себя пользовательский Web-интерфейс, предоставляемый установленным в инфраструктуре заказчика Web-сервером с поддержкой исполнения PHP. Для получения запрашиваемой информации, Web-сервер АРМ РКС использует подключение к PCS через SOAP API, и подключение к БД PCS.

Настройка подключения

Для взаимодействия АРМ РКС необходимо установить Apache HTTP-сервер и PHP, в т.ч. модули php-soap.

Подключение к БД

Кроме того необходимо настроить подключение к БД с использованием PDO-драйверов:

PostgreSQL

Для начала нужно распаковать архив с файлами АРМ РКС в папку /var/www/html/.

Затем установить драйвер PostgreSQL для PHP и настроить подключение к БД с его помощью в конфигурационном файле.

sudo apt install php-pgsql

Centos

На Centos 7 + PHP 5 + pdo_pgsql 9.2 также необходимо разрешить подключение для этого IP адреса к БД (даже в случае, если АРМ РКС и СУБД располагаются на одном хосте) - файл postgresql.conf, и добавить запись для разрешения аутентификации с этого IP - файл pg_hba.conf. Подробнее - PostgreSQL#Разрешение подключения с других хостов.

Для проверки успешности подключения, проверить информацию о PHP (выводится с помощью вызова функции phpinfo();), должны отображаться установленные PDO-драйверы:

Oracle

Ubuntu

Инструкция для настройки PHP + PDO + OCI8

Проверено на Ubuntu 16.04 + php7.0.30 + apache2 + Oracle Instant Client 18.3

Centos

Для подключения к СУБД Oracle необходимо использовать PHP версии 7.x и установить Oracle-client. Подробное описание установки драйверов Oracle для PHP доступно по ссылке: https://www.codeproject.com/Articles/1231012/Installing-OCI-PHP-on-RHEL-or-CentOS.

Драйверы Oracle доступны по ссылке https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html

Пример выполнения команд по установке:

sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php73
sudo yum install php php-oci8 php-pdo php-soap
sudo yum install oracle-instantclient19.3-basic-19.3.0.0.0-1.x86_64.rpm oracle-instantclient19.3-devel-19.3.0.0.0-1.x86_64.rpm
sudo sh -c "echo /usr/lib/oracle/19.3/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig
php -v
sudo systemctl restart httpd

Для проверки успешности подключения, проверить информацию о PHP (выводится с помощью вызова функции phpinfo();), должны отображаться установленные PDO-драйверы:

Необходимо в SELinux предоставить Apache разрешение на установку сетевого подключение к СУБД Oracle:

semanage port -m -t http_port_t -p tcp 1521

Также, для успешного подключения к HTTPD необходимо разрешить подключения к порту 80 или 443:

sudo firewall-cmd --zone=public --add-service=http

MS SQL

Необходима установка драйвера dblib для PHP.

Ubuntu

Пример команды для установки драйвера для Ubuntu:

sudo apt install php7.0-sybase

CentOS 7

Команда для предоставления доступа Apache на подключение к другим ресурсам:

setsebool httpd_can_network_connect 1
sudo yum install epel-release php-soap
sudo yum install php-mssql
sudo systemctl restart httpd.service

При установке php-mssql должен автоматически установиться php-pdo.

Для проверки успешности подключения, проверить информацию о PHP (выводится с помощью вызова функции phpinfo();), должны отображаться установленные PDO-драйверы:

CentOS 8

Команда для предоставления доступа Apache на подключение к другим ресурсам:

setsebool httpd_can_network_connect 1

Установка PHP и драйверов:

sudo su
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf install yum-utils
dnf module reset php
dnf module install php:remi-7.2
subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
dnf update
dnf install php-pdo php-pear php-devel

MS Windows

Вариант 1. Развёртывание Apache и PHP самостоятельно
  • Скачать Apache, распаковать, например в c:\Apache24;
  • Скачать PHP 7, распаковать, например в c:\php;
  • Подключить PHP в Apache (файл c:\Apache24\conf\httpd.conf):
    LoadModule php7_module c:/php/php7apache2_4.dll
    <IfModule dir_module>
        DirectoryIndex index.html index.htm index.php
    </IfModule>
    	AddType application/x-httpd-php .php
    	AddHandler application/x-httpd-php .php
    PHPiniDir "c:/php"
    
  • Включить поддержку SOAP API в PHP (файл c:\php\php.ini):
    extension=soap
    
  • Добавить PDO SQL (pdo_sqlsrv) драйвер в PHP. Для этого:
    • Скачать драйвер Microsoft Drivers 5.6 for PHP for SQL Server (или свежее) с https://www.microsoft.com/en-us/download/details.aspx?id=57916 (при выпуске более свежей версии драйвера, возможно ссылка на него будет новая)
    • Распаковать в c:\php\ext
    • Сконфигурировать в c:\php\php.ini:
      extension=php_pdo_sqlsrv_73_ts_x64
      extension=php_sqlsrv_73_ts_x64.dll
      
Вариант 2. Использование подготовленных PHP и Apache
  • Распаковать директории Apache24 и php на диск C: сервера/рабочей станции, где будет развёрнут АРМ РКС;
Общие шаги

Конфигурирование подключения

Для удобства настройки, можно предоставить группе pc_admins доступ на запись в директорию web-сервера:

chown -Rv :pc_admins /var/www/html/
chmod -Rv g+w /var/www/html/

Для подключения необходимо создать копию файла config.php.DEFAULT с именем config.php. В новом файле:

Системные требования

Требования указаны без учёта системных требований ОС.

Минимальные

  • ЦП: одно ядро;
  • ОЗУ: 100 MB;
  • Дисковое пространство: 150 MB.

Рекомендуемые

  • ЦП: одно ядро;
  • ОЗУ: 512 MB;
  • Дисковое пространство: 1 GB.