这是一个很大的问题。我在Apache上安装了PHP 5.2.9,无法升级PHP。有没有办法让我在PHP 5.2.9中启用SOAP?PHP手册说:“要启用SOAP支持,请使用-- enable -soap配置PHP。”如何配置?
发布于 2012-07-21 02:27:07
让SOAP正常工作通常不需要从源代码编译PHP。我建议将其作为最后一种选择来尝试。
为了更好地衡量,请查看您的phpinfo对SOAP扩展的说明:
$ php -i | grep -i soap以确保缺少PHP扩展。
假设您在phpinfo中没有看到任何关于SOAP的内容,那么看看有哪些PHP SOAP包可供您使用。
在Ubuntu/Debian中,您可以使用以下命令进行搜索:
$ apt-cache search php | grep -i soap或者在RHEL/Fedora中,您可以使用以下命令进行搜索:
$ yum search php | grep -i soap通常有两个PHP SOAP包可用,通常是php-soap和php-nusoap。使用--enable-soap配置PHP通常会得到php-soap。
在Ubuntu/Debian中,您可以使用以下命令安装:
$ sudo apt-get install php-soap或者在RHEL/Fedora中,您可以使用以下命令进行安装:
$ sudo yum install php-soap安装之后,您可能需要放置一个ini文件并重新启动Apache。
发布于 2017-07-06 19:45:55
如果您的机器上安装了Ubuntu,以下步骤将对您有所帮助:

发布于 2012-07-21 02:02:49
至于你的问题:不,如果从.ini激活是不够的,并且你不能升级PHP,那么你能做的就不多了。某些模块(但不是所有模块)无需重新编译即可添加(zypper install php5-soap、yum install php-soap)。如果这还不够,可以尝试安装一些PEAR类来支持解释的SOAP (NuSOAP等)。
通常,双短划线--switches被设计为在从头开始重新编译PHP时使用。
您可以下载PHP源程序包(例如,作为压缩的.tgz压缩包),将其展开到某个位置,然后,例如在Linux下,运行配置脚本
./configure --prefix ...您的PHP使用的configure命令可能会在phpinfo()中显示。重复相同的代码应该会得到一个与现在安装的PHP完全相同的副本。然后添加--enable-soap将启用SOAP以及其他所有内容。
也就是说,如果您不熟悉PHP重新编译,请不要这样做。它还需要几个辅助库,您可能有,也可能没有- freetype、gd、libjpeg、XML、expat等等(安装这些库还不够;它们必须是开发人员版本,即带有头文件等;在大多数发行版中,安装了libjpeg可能还不够,您可能还需要libjpeg-dev )。
为了重新编译,我必须保留一个单独的虚拟机,其中安装了所有的内容。
https://stackoverflow.com/questions/11584426
复制相似问题