605 просмотров
Для работы с расширением требуется собрать библиотеку совместно с исходниками вашей версии PHP.
Для сборки расширения libphpcades требуется:
1. Установить пакеты libboost-dev и php-dev из репозитория пакетов.
2. Установить КриптоПро CSP версии 4.0 или выше, берем тут
распаковываете архив с помощью tar (как вариант tar zxvf linux-amd64.tgz) и даете возможность запускать скрипт install.shдо установим, еще два пакета cprocsp-rdr-gui-gtk и lsb-cprocsp-devel
3. Установить пакет cprocsp-pki-cades и cprocsp-devel из состава КриптоПро ЭЦП SDK.
4. Смотрим текщую версию php – php-v и качаем исходники этой версии с php.net
заходим в каталог распакованных исходников и ./configure потом make
В файле /opt/cprocsp/src/phpcades/Makefile.unix указать путь к исходным текстам нужной версии PHP в переменной PHPDIR. (например – PHPDIR=/opt/php-7.4.3)
5. Для сборки расширения в папке /opt/cprocsp/src/phpcades в зависимости от разрядности системы выполнить:
сначала пропатчть под php7, сам патч берем тут
распаковываем его в /opt/cprocsp/src/phpcades/ и там выполняем patch -p0 < ./php7_support.patch
Собираем libphpcades.so выполнив
eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh –64`; make -f Makefile.unix
или (зависит от разрядности)
eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh –32`; make -f Makefile.unix
6. Узнаем путь к расширениям в вашей системе:
php -i | grep extension_dir
и копируем в нее скомпилированный libphpcades.so
7. В файле php.ini добавить расширение:
extension=libphpcades.so
8. проверяем
[root@localhost phpcades]# php -m | grep php_CPCSP
php_CPCSP
или как вариант, создаем php файл и смотрим вывод
<?php
ini_set("log_errors", 1);
ini_set ('display_errors', 1);
error_reporting (E_ALL);
try
{ $sd = new CPSignedData();
$content = "test content";
$sd = new CPSignedData();
$sd->set_Content($content);
printf("test init OK\n");
}
catch (Exception $e)
{
printf($e->getMessage());
}
?>
В принципе в основном все, могут быть нюансы, но все решается
на всякий случай патч php7_support.patch.zip выложил тут
php7_support.patch
Поделиться:
Фев 12 2021
Linux + Криптопро + php7.x
Для работы с расширением требуется собрать библиотеку совместно с исходниками вашей версии PHP.
Для сборки расширения libphpcades требуется:
1. Установить пакеты libboost-dev и php-dev из репозитория пакетов.
2. Установить КриптоПро CSP версии 4.0 или выше, берем тут
распаковываете архив с помощью tar (как вариант tar zxvf linux-amd64.tgz) и даете возможность запускать скрипт install.shдо установим, еще два пакета cprocsp-rdr-gui-gtk и lsb-cprocsp-devel
3. Установить пакет cprocsp-pki-cades и cprocsp-devel из состава КриптоПро ЭЦП SDK.
4. Смотрим текщую версию php – php-v и качаем исходники этой версии с php.net
заходим в каталог распакованных исходников и ./configure потом make
В файле /opt/cprocsp/src/phpcades/Makefile.unix указать путь к исходным текстам нужной версии PHP в переменной PHPDIR. (например – PHPDIR=/opt/php-7.4.3)
5. Для сборки расширения в папке /opt/cprocsp/src/phpcades в зависимости от разрядности системы выполнить:
сначала пропатчть под php7, сам патч берем тут
распаковываем его в /opt/cprocsp/src/phpcades/ и там выполняем patch -p0 < ./php7_support.patch
Собираем libphpcades.so выполнив
eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh –64`; make -f Makefile.unix
или (зависит от разрядности)
eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh –32`; make -f Makefile.unix
6. Узнаем путь к расширениям в вашей системе:
php -i | grep extension_dir
и копируем в нее скомпилированный libphpcades.so
7. В файле php.ini добавить расширение:
extension=libphpcades.so
8. проверяем
[root@localhost phpcades]# php -m | grep php_CPCSP
php_CPCSP
или как вариант, создаем php файл и смотрим вывод
В принципе в основном все, могут быть нюансы, но все решается
на всякий случай патч php7_support.patch.zip выложил тут
php7_support.patch
Поделиться:
By serg • Cryptopro, Linux 0