Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to enable SOAP on CentOS

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

$ yum install php-soap 

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

extension=soap.so 

Then I restarted the server by running

$ service httpd restart 

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:

Package php-soap-5.3.3-27.el6_5.x86_64 already installed and latest version 

I tried to reconfigure PHP with following command as well:

$ php-config '--disable-fileinfo' '--disable-pdo' '--enable-bcmath' '--enable-calendar' '--enable-ftp' '--enable-libxml' '--enable-sockets' '--prefix=/usr/local' '--with-apxs2=/usr/local/apache/bin/apxs' '--with-curl=/opt/curlssl/' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-kerberos' '--with-libdir=lib64' '--with-libxml-dir=/opt/xml2/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-pcre-regex=/opt/pcre' '--with-pic' '--with-zlib' '--with-zlib-dir=/usr' '--enable-soap' 

Any help?

like image 987
user3241013 Avatar asked Mar 23 '14 17:03

user3241013


1 Answers

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

yum install php-soap 


Second, see if the soap package exist or not

yum search php-soap 

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

find -name soap.so 

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

/etc/php.ini 

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

extension='/usr/lib/php/modules/soap.so' 

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 )

service httpd restart 

OR

apachectl restart 

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

like image 199
Anil Avatar answered Sep 23 '22 06:09

Anil