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

Материал из PayControl Wiki
Перейти к: навигация, поиск
(Centos)
(CentOS 8)
Строка 68: Строка 68:
 
</gallery>
 
</gallery>
 
====CentOS 8====
 
====CentOS 8====
Команда для предоставления доступа Apache на подключение к другим ресурсам:
+
*Команда для предоставления доступа Apache на подключение к другим ресурсам:
 
<syntaxhighlight lang="bash">setsebool httpd_can_network_connect 1</syntaxhighlight>
 
<syntaxhighlight lang="bash">setsebool httpd_can_network_connect 1</syntaxhighlight>
Установка PHP и драйверов:
+
*Установка PHP:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
sudo su
 
sudo su
Строка 81: Строка 81:
 
dnf update
 
dnf update
 
dnf install php-pdo php-pear php-devel
 
dnf install php-pdo php-pear php-devel
 +
</syntaxhighlight>
 +
*Загрузка и установка драйвера Microsoft ODBC 17:
 +
<syntaxhighlight lang="bash">
 +
sudo curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssql-release.repo
 +
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel #to avoid conflicts
 +
sudo ACCEPT_EULA=Y yum install msodbcsql17
 +
</syntaxhighlight>
 +
*Установка драйверов PHP для Microsoft SQL Server
 +
<syntaxhighlight lang="bash">
 +
sudo yum install php-sqlsrv
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Версия 12:51, 17 июня 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
  • Загрузка и установка драйвера Microsoft ODBC 17:
sudo curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssql-release.repo
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel #to avoid conflicts
sudo ACCEPT_EULA=Y yum install msodbcsql17
  • Установка драйверов PHP для Microsoft SQL Server
sudo yum install php-sqlsrv

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.