centos install php soap

Установка PHP Soap на CentOS

SOAP (Simple Object Access Protocol) — представляет собой простой протокол основанный на XML, позволяет обмениваться информацией между распределенными приложениями. На практике может использоваться для разных задач. Одни из популярных это интеграция приложений с внешними службами. В моем случае потребовалось интегрировать веб-приложение системой 1C, для получения актуальной информации в режиме реального времени из базы данных 1C по запросу пользователя на сайте. На самом деле SOAP умеет работать с множеством протоколов прикладного уровня, среди которых SMTP, FTP, HTTP, HTTPS, а так же др. На первых порах SOAP главным образом предназначался для реализации удаленного вызова процедур, или как его ещё сокращенно именуют RPC. Сегодня он используется произвольно, для обмена данными в формате XML.

Базовая конфигурация PHP обычно не включает в себе такие модули, и при попытке обращаться к специализированным классам для работы с SOAP сервером, приходилось наблюдать сообщение об ошибке, что-то вроде этого:
Fatal error: Class ‘SoapClient’ not found

Это уже пол дела, так как мы уже знаем, что у нас нету класса SoapClient. Чтобы это дело заработало, необходимо к интерпретатору PHP прикрутить модуль Soap Client, который собственно и даст возможность работать с SOAP.

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

В моем же случае использовалась система CentOS. На ней установлена традиционная связка LAMP, которую можно повстречать на многих других веб-серверах. Установка простая, и типична для систем CentOS Linux. Итак, мы авторизовались в системе под root, далее посредством менеджера пакетов YUM мы будем устанавливать php soap.

Устанавливаем пакет php soap

После выполнения команды вам будет показана информация о пакете, который планируется установить в систему, и вас так же попросят подтвердить начало установки:

После ввода команды «y», а это говорит о том, что вы подтверждаете установку, начнется процедура скачивания и установки пакета из репозитория. После установки php soap необходимо так же перезапустить веб сервер, в нашем случае это httpd. Это позволит веб-серверу подгрузить изменения в конфигурации.

Перезагружаем веб-сервер httpd

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

Проверяем наличие SOAP в PHP

В результате выполнения команды, вы должны увидеть строку с надписью «soap», это говорит о том, что он уже есть. Кроме того проверить его наличие так же можно выполнив обращения к классу модуля из самих скриптов, если это не затруднительно, если скрипты отрабатывают, то это означает что библиотека установлена.

Источник

How to enable SOAP on CentOS

We have VPS with CentOS. I have installed SOAp using the following command:

Then I went to the php.ini file to uncomment the SOAP extension. It was not there, so I added the following line:

Читайте также:  за что присваивают гвардию

Then I restarted the server by running

But SOAP is still not enabled. I get the Fatal error: Class ‘SoapClient’ message.

If I try to install it again, I get following message:

I tried to reconfigure PHP with following command as well:

5 Answers 5

For my point of view, First thing is to install soap into Centos

Second, see if the soap package exist or not

third, thus you must see some result of soap package you installed, now type a command in your terminal in the root folder for searching the location of soap for specific path

fourth, you will see the exact path where its installed/located, simply copy the path and find the php.ini to add the extension path,

usually the path of php.ini file in centos 6 is in

fifth, add a line of code from below into php.ini file

and then save the file and exit.

sixth run apache restart command in Centos. I think there is two command that can restart your apache ( whichever is easier for you )

Lastly, check phpinfo() output in browser, you should see SOAP section where SOAP CLIENT, SOAP SERVER etc are listed and shown Enabled.

Источник

Free Online Tutorials

Tutorials, Resources and Snippets

Howto Install php-soap in CentOS

Step 1:
yum search php-soap

]# yum search php-soap
Loaded plugins: fastestmirror, protectbase
Loading mirror speeds from cached hostfile
* epel: mirrors.solfo.com
* updates: mirror.5ninesolutions.com
* base: centos.mirror.freedomvoice.com
* addons: mirror.pac-12.org
* extras: mirrors.usc.edu
epel | 3.6 kB 00:00
32b030121b83fbe38c4fd0bcdbbe5334dfde766b-primary.sqlite. | 3.1 MB 00:00
0 packages excluded due to repository protections
============================== Matched: php-soap ===============================
php-soap.i386 : A module for PHP applications that use the SOAP protocol
php53-soap.i386 : A module for PHP applications that use the SOAP protocol

Step 2:
yum install php-soap.i386

]# yum install php-soap.i386
Loaded plugins: fastestmirror, protectbase
Loading mirror speeds from cached hostfile
* epel: mirrors.solfo.com
* updates: mirror.5ninesolutions.com
* base: centos.mirror.freedomvoice.com
* addons: mirror.pac-12.org
* extras: mirrors.usc.edu
0 packages excluded due to repository protections
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
—> Running transaction check
—> Package php-soap.i386 0:5.2.17-24 set to be updated
—> Processing Dependency: php-common = 5.2.17-24 for package: php-soap
—> Running transaction check
—> Processing Dependency: php-common = 5.2.17-13 for package: php-mbstring
—> Processing Dependency: php-common = 5.2.17-13 for package: php-cli
—> Processing Dependency: php-common = 5.2.17-13 for package: php-mysql
—> Processing Dependency: php-common = 5.2.17-13 for package: php-xml
—> Processing Dependency: php-common = 5.2.17-13 for package: php-pdo
—> Processing Dependency: php-common = 5.2.17-13 for package: php-mcrypt
—> Processing Dependency: php-common = 5.2.17-13 for package: php
—> Processing Dependency: php-common = 5.2.17-13 for package: php-gd
—> Processing Dependency: php-common = 5.2.17-13 for package: php-imap
—> Package php-common.i386 0:5.2.17-24 set to be updated
—> Running transaction check
—> Package php-xml.i386 0:5.2.17-24 set to be updated
—> Package php-imap.i386 0:5.2.17-24 set to be updated
—> Package php.i386 0:5.2.17-24 set to be updated
—> Package php-gd.i386 0:5.2.17-24 set to be updated
—> Processing Dependency: php = 5.2.17-13 for package: php-devel
—> Package php-pdo.i386 0:5.2.17-24 set to be updated
—> Package php-mysql.i386 0:5.2.17-24 set to be updated
—> Package php-mcrypt.i386 0:5.2.17-24 set to be updated
—> Package php-cli.i386 0:5.2.17-24 set to be updated
—> Package php-mbstring.i386 0:5.2.17-24 set to be updated
—> Running transaction check
—> Package php-devel.i386 0:5.2.17-24 set to be updated
—> Finished Dependency Resolution

Читайте также:  что находится внутри головы

================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
php-soap i386 5.2.17-24 lxcenter-updates 356 k
Updating:
php i386 5.2.17-24 lxcenter-updates 3.5 M
php-cli i386 5.2.17-24 lxcenter-updates 2.6 M
php-common i386 5.2.17-24 lxcenter-updates 581 k
php-devel i386 5.2.17-24 lxcenter-updates 555 k
php-gd i386 5.2.17-24 lxcenter-updates 345 k
php-imap i386 5.2.17-24 lxcenter-updates 111 k
php-mbstring i386 5.2.17-24 lxcenter-updates 1.3 M
php-mcrypt i386 5.2.17-24 lxcenter-updates 50 k
php-mysql i386 5.2.17-24 lxcenter-updates 270 k
php-pdo i386 5.2.17-24 lxcenter-updates 168 k
php-xml i386 5.2.17-24 lxcenter-updates 380 k

Total download size: 10 M
Is this ok [y/N]: y
Downloading Packages:
(1/12): php-mcrypt-5.2.17-24.i386.rpm | 50 kB 00:00
(2/12): php-imap-5.2.17-24.i386.rpm | 111 kB 00:00
(3/12): php-pdo-5.2.17-24.i386.rpm | 168 kB 00:00
(4/12): php-mysql-5.2.17-24.i386.rpm | 270 kB 00:01
(5/12): php-gd-5.2.17-24.i386.rpm | 345 kB 00:01
(6/12): php-soap-5.2.17-24.i386.rpm | 356 kB 00:00
(7/12): php-xml-5.2.17-24.i386.rpm | 380 kB 00:00
(8/12): php-devel-5.2.17-24.i386.rpm | 555 kB 00:01
(9/12): php-common-5.2.17-24.i386.rpm | 581 kB 00:02
(10/12): php-mbstring-5.2.17-24.i386.rpm | 1.3 MB 00:06
(11/12): php-cli-5.2.17-24.i386.rpm | 2.6 MB 00:12
(12/12): php-5.2.17-24.i386.rpm | 3.5 MB 00:16
———————————————————————————
Total 216 kB/s | 10 MB 00:48
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : php-common [ 1/23]
Updating : php-pdo [ 2/23]
Updating : php-cli [ 3/23]
Updating : php [ 4/23]
Installing : php-soap [ 5/23]
Updating : php-mbstring [ 6/23]
Updating : php-devel [ 7/23]
Updating : php-mcrypt [ 8/23]
Updating : php-xml [ 9/23]
Updating : php-gd [10/23]
Updating : php-imap [11/23]
Updating : php-mysql [12/23]
Cleanup : php-cli [13/23]
Cleanup : php-common [14/23]
Cleanup : php-mbstring [15/23]
Cleanup : php-devel [16/23]
Cleanup : php-mcrypt [17/23]
Cleanup : php [18/23]
Cleanup : php-xml [19/23]
Cleanup : php-pdo [20/23]
Cleanup : php-gd [21/23]
Cleanup : php-imap [22/23]
Cleanup : php-mysql [23/23]

Installed: php-soap.i386 0:5.2.17-24
Updated: php.i386 0:5.2.17-24 php-cli.i386 0:5.2.17-24 php-common.i386 0:5.2.17-
24 php-devel.i386 0:5.2.17-24 php-gd.i386 0:5.2.17-24 php-imap.i386 0:5.2.17-24
php-mbstring.i386 0:5.2.17-24 php-mcrypt.i386 0:5.2.17-24 php-mysql.i386 0:5.2.1
7-24 php-pdo.i386 0:5.2.17-24 php-xml.i386 0:5.2.17-24
Complete!

Step 3: restart httpd
service httpd restart

Источник

Как включить SOAP на CentOS

У нас есть VPS с CentOS. Я установил мыло со следующей командой.

Затем я отправился на php.ini, чтобы не прокомментировать расширение мыла. Его там не было, я добавил свою следующую строку.

Затем я перезапускаю сервер с помощью следующей команды

Но SOAP все еще не включен. как я получаю Неустранимая ошибка: Класс «SoapClient» Если я попытаюсь установить его снова. Я получаю следующее сообщение.

Я попытался перенастроить PHP с помощью следующей команды.

С моей точки зрения, прежде всего, нужно установить мыло в Centos

Во-вторых, посмотрите, существует ли пакет мыла или нет.

Читайте также:  что находится справа под ребрами у человека спереди давит

в-третьих, таким образом, вы должны увидеть некоторый результат пакета мыла, который вы установили, теперь введите команду в своем терминале в корневой папке для поиска местоположения мыла для определенного пути

в-четвертых, вы увидите точный путь, где его установлены / расположены, просто скопируйте путь и найдите php.ini для добавления пути расширения,

обычно путь файла php.ini в centos 6 находится в

пятый, добавьте строку кода снизу в файл php.ini

а затем сохраните файл и выйдите из него.

шестая команда перезапуска apache в Centos. Я думаю, что есть две команды, которые могут перезапустить ваш apache (в зависимости от того, что вам легче)

Наконец, проверьте вывод phpinfo () в браузере, вы увидите раздел SOAP, в котором перечислены SOAP CLIENT, SOAP SERVER и показаны Enabled.

На CentOS 7 работают следующие работы:

Это автоматически создаст soap.ini в /etc/php.d.

Само расширение для меня живет в / usr / lib64 / php / modules. Вы можете подтвердить свой каталог расширений, выполнив:

Как только это будет установлено, вы можете просто перезапустить Apache с помощью нового сервис-менеджера:

Спасибо Мэтту Брауну за информацию о /etc/php.d.

Я установил php-soap для выпуска CentOS Linux 7.1.1503 (Core) следующим образом.

Источник

Как включить SOAP на CentOS

У нас есть VPS с CentOS
Я установил мыло со следующей командой.

Затем я отправился на php.ini, чтобы прокомментировать расширение мыла. Его там не было, я добавил свою следующую строку.

Затем перезапустите сервер со следующей командой

Но SOAP все еще не включен., поскольку я получаю Неустранимая ошибка: Class ‘SoapClient’
Если я попытаюсь установить его снова. Я получаю следующее сообщение.

Я попытался повторно настроить PHP с помощью следующей команды.

В CentOS 7 выполняются следующие работы:

Это автоматически создаст soap.ini в /etc/php.d.

Само расширение для меня живет в /usr/lib 64/php/modules. Вы можете подтвердить свой каталог расширений, выполнив следующие действия:

После того, как это было установлено, вы можете просто перезапустить Apache с помощью нового менеджера служб следующим образом:

Спасибо Мэтту Брауну за информацию о/etc/php.d.

Для моей точки зрения, сначала нужно установить мыло в Centos

Во-вторых, посмотрите, существует ли пакет мыла или нет.

в-третьих, таким образом, вы должны увидеть некоторый результат установленного пакета мыла, теперь введите команду в своем терминале в корневой папке для поиска местоположения мыла для определенного пути

В-четвертых, вы увидите точный путь, где его установлены/расположены, просто скопируйте путь и найдите php.ini для добавления пути расширения,

обычно путь к файлу php.ini в centos 6 находится в

пятый, добавьте строку кода ниже в файл php.ini

а затем сохраните файл и выйдите.

шестой запуск команды перезапуска apache в Centos. Я думаю, что есть две команды, которые могут перезапустить ваш apache (в зависимости от того, что вам легче)

Наконец, проверьте вывод phpinfo() в браузере, вы должны увидеть раздел SOAP, в котором перечислены SOAP CLIENT, SOAP SERVER и показаны Enabled.

Источник

Образовательный портал