Wir haben VPS mit CentOS. Ich habe soap mit folgendem Befehl installiert.
yum install php-soap
Dann ging ich zu php.ini, um die Soap-Erweiterung zu entkommentieren. Es war nicht da, also fügte ich meine eigene folgende Zeile hinzu.
extension=soap.so
Dann starte ich den Server mit folgendem Befehl neu
service httpd restart
Aber SOAP ist immer noch nicht aktiviert. wie ich schwerwiegenden Fehler erhalte: Klasse 'SoapClient' Wenn ich versuche, es erneut zu installieren. Ich bekomme folgende Meldung.
Package php-soap-5.3.3-27.el6_5.x86_64 already installed and latest version
Ich habe versucht, PHP mit folgendem Befehl ebenfalls neu zu konfigurieren.
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'
Irgendeine Hilfe?
Aus meiner Sicht besteht das Erste darin, Seife in Centos zu installieren
yum install php-soap
Zweitens, sehen Sie nach, ob die Seifenverpackung existiert oder nicht
yum search php-soap
drittens müssen Sie ein Ergebnis des Seifenpakets sehen, das Sie installiert haben. Geben Sie nun einen Befehl in Ihr Terminal im Stammordner ein, um den Speicherort der Seife nach einem bestimmten Pfad zu durchsuchen
find -name soap.so
viertens sehen Sie den genauen Pfad, in dem es installiert/gespeichert ist. Kopieren Sie einfach den Pfad und suchen Sie die php.ini, um den Erweiterungspfad hinzuzufügen.
in der regel ist der pfad der php.ini datei in centos 6 in
/etc/php.ini
als fünftes fügen Sie eine Codezeile von unten in die Datei php.ini ein
extension='/usr/lib/php/modules/soap.so'
und dann die Datei speichern und beenden.
führen Sie den Apache-Neustartbefehl zum sechsten Mal in Centos aus. Ich denke, es gibt zwei Befehle, die Ihren Apache neu starten können (je nachdem, was für Sie einfacher ist)
service httpd restart
OR
apachectl restart
Zuletzt überprüfen Sie die Ausgabe von phpinfo () im Browser. Sie sollten den Abschnitt SOAP= where SOAP CLIENT, SOAP SERVER etc.) aufgelistet und angezeigt Aktiviert.
Unter CentOS 7 funktioniert Folgendes:
yum install php-soap
Dadurch wird automatisch eine soap.ini unter /etc/php.d erstellt.
Die Erweiterung selbst befindet sich für mich in/usr/lib64/php/modules. Sie können Ihr Nebenstellenverzeichnis folgendermaßen bestätigen:
php -i | grep extension_dir
Sobald dies installiert wurde, können Sie Apache einfach mit dem neuen Service Manager neu starten:
systemctl restart httpd
Vielen Dank an Matt Browne für die Info zu /etc/php.d.
Ich habe php-soap auf folgende Weise auf CentOS Linux Release 7.1.1503 (Core) installiert.
1) yum installieren PHP-Seife
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
php-soap x86_64 5.4.16-36.el7_1 base 157 k
Updating for dependencies:
php x86_64 5.4.16-36.el7_1 base 1.4 M
php-cli x86_64 5.4.16-36.el7_1 base 2.7 M
php-common x86_64 5.4.16-36.el7_1 base 563 k
php-devel x86_64 5.4.16-36.el7_1 base 600 k
php-Gd x86_64 5.4.16-36.el7_1 base 126 k
php-mbstring x86_64 5.4.16-36.el7_1 base 503 k
php-mysql x86_64 5.4.16-36.el7_1 base 99 k
php-pdo x86_64 5.4.16-36.el7_1 base 97 k
php-xml x86_64 5.4.16-36.el7_1 base 124 k
Transaction Summary
================================================================================
Install 1 Package
Upgrade ( 9 Dependent packages)
Total download size: 6.3 M
Is this ok [y/d/N]: y
Downloading packages:
------
------
------
Installed:
php-soap.x86_64 0:5.4.16-36.el7_1
Dependency Updated:
php.x86_64 0:5.4.16-36.el7_1 php-cli.x86_64 0:5.4.16-36.el7_1
php-common.x86_64 0:5.4.16-36.el7_1 php-devel.x86_64 0:5.4.16-36.el7_1
php-Gd.x86_64 0:5.4.16-36.el7_1 php-mbstring.x86_64 0:5.4.16-36.el7_1
php-mysql.x86_64 0:5.4.16-36.el7_1 php-pdo.x86_64 0:5.4.16-36.el7_1
php-xml.x86_64 0:5.4.16-36.el7_1
Complete!
2) Yum Search PHP-Seife
============================ N/S matched: php-soap =============================
php-soap.x86_64 : A module for PHP applications that use the SOAP protocol
3) Dienst httpd Neustart
Führen Sie die folgenden Schritte aus, um zu überprüfen
4) php -m | grep -i soap
seife
Nach stundenlangem Suchen war mein Problem wohl der Befehl yum install php-soap
installiert die neueste Version von soap für die neueste PHP-Version.
Meine PHP-Version war 7.027
, aber die neueste PHP-Version ist 7.2
also musste ich nach der richtigen Seifenversion suchen und fand sie schließlich HIER!
yum install rh-php70-php-soap
Jetzt php -m | grep -i soap
funktioniert, Ausgabe: soap
Vergessen Sie nicht, den Dienst httpd
neu zu starten.