ich entwickel gerade eine SOAP-Applikation und benötige auf dem (Kunden)Server natürlich
die php-soap Erweiterung. (Anm. Server gehört Kunde, mit 1&1/Suse/Yast/Plesk kenne ich mich nicht so aus)
phpinfo sagt kein soap.
Also wollte ich das vorhandene(!) PHP neu kompilieren --enable-soap
So sieht es aus:
System: openSuse 10.2 (2.6.20.21-071108a #1 ), php5.2.5, Plesk8.3
phpinfo(snip):
Code: Select all
Configure Command '../configure' '--prefix=/usr' '--datadir=/usr/share/php5' '--mandir=/usr/share/man' '--bindir=/usr/bin' '--with-libdir=lib64' '--includedir=/usr/include' '--sysconfdir=/etc/php5/apache2' '--with-config-file-path=/etc/php5/apache2' '--with-config-file-scan-dir=/etc/php5/conf.d' '--with-exec-dir=/usr/lib64/php5/bin' '--enable-libxml' '--enable-filter' '--enable-session' '--with-mm' '--with-pcre-regex=/usr' '--enable-xml' '--enable-simplexml' '--enable-spl' '--disable-debug' '--enable-memory-limit' '--enable-inline-optimization' '--enable-zend-multibyte' '--disable-rpath' '--with-apxs2=/usr/sbin/apxs2' '--disable-all' '--disable-cli'
Configuration File (php.ini) Path /etc/php5/apache2/php.ini
Scan this dir for additional .ini files /etc/php5/conf.d
additional .ini files parsed /etc/php5/conf.d/ctype.ini, /etc/php5/conf.d/curl.ini, /etc/php5/conf.d/dom.ini, /etc/php5/conf.d/ftp.ini, /etc/php5/conf.d/gd.ini, /etc/php5/conf.d/gettext.ini, /etc/php5/conf.d/iconv.ini, /etc/php5/conf.d/imap.ini, /etc/php5/conf.d/ioncube-loader.ini, /etc/php5/conf.d/mbstring.ini, /etc/php5/conf.d/mcrypt.ini, /etc/php5/conf.d/mysql.ini, /etc/php5/conf.d/mysqli.ini, /etc/php5/conf.d/openssl.ini, /etc/php5/conf.d/pdo.ini, /etc/php5/conf.d/pdo_mysql.ini, /etc/php5/conf.d/xsl.ini, /etc/php5/conf.d/zlib.ini
This server is protected with the Suhosin Patch 0.9.6.1
Copyright (c) 2006 Hardened-PHP Project
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2006 Zend Technologies
with the ionCube PHP Loader v3.1.28, Copyright (c) 2002-2007, by ionCube Ltd.
Aber wo ist der Source? Mit Yast konnte ich zwar erfolgreich von 5.0 auf 5.2.5 updaten, aber mit Yast kann ich ja das configure nicht ändern.. und es ist definitiv kein install-Source auf den Server.
Verständiss-Frage: Wie/Wo/Warum hat Yast das Update erfolgreich kompiliert?
Nun, dann mach ich das update/recompile von Hand:
# wget php5.2.5
# ./configure [old config] --enable-soap
Confgure meldet:
loading cache ./config.cache
checking for Cygwin environment... no
checking for mingw32 environment... no
checking for egrep... grep -E
checking for a sed that does not truncate output... //bin/sed
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for gcc... no
checking for cc... no
configure: error: no acceptable cc found in $PATH
Hä? Auf er Maschine gibt es kein Compiler? Auch find/whereis liefert keine Ergebniss..
Also mal mit Yast den gcc installieren: -ok
# ./configure [...]
checking for gcc... no
checking for cc... no
configure: error: no acceptable cc found in $PATH
# echo $PATH
//sbin://bin:/sbin:/usr/sbin:/usr/local/sbin:/opt/gnome/sbin:/root/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit/bin:/usr/lib/mit/sbin:/usr/lib64:/usr/lib
Help! Ich versteh es nicht.. bin zu blöd für diese Maschine..
Verständniss-Frage: Komisch, wie hat denn Yast das Update kompiliert?
Darf ich das überhaupt neu komplieren, oder macht Plesk/Yast dann Ärger?
Der Suhosin wird hoffentlich bleiben..?
Und nebenbei noch so ein Verständniss-Problem:
Loadmodule.conf beinhaltet:
LoadModule php5_module /usr/lib64/apache2/mod_php5.so
root:/usr/lib64/apache2 # ll *.so
-rwxr-xr-x 1 root root 242840 Nov 25 2006 mod_perl.so
-rw-r--r-- 1 root root 3173632 Jan 14 17:14 mod_php5.so
-rwxr-xr-x 1 root root 73280 Mar 26 12:51 mod_proxy.so
Verständiss-Frage: Wieso ist das mod_php5.so nicht executable (so wie alle anderen)?
Und wieso überhaupt wurde diese PHP-Version ohne "--with-mysql" configuriert. Ist das nun default?
Bevor ich was kaputt installiere.. werde ich erstmal 1 Tag pausieren.
Vielleicht kann mir jemand aus meinem "Black-out" helfen...
Gruss
die Eule

