无法在Windows x64上安装WSO2 for PHP - PHP启动:无法加载动态库'\ text \ wsf.dll'

时间:2012-09-12 13:05:06

标签: php wso2

我想我已遵循安装说明,但显然我错过了一些东西。基本上,使用php.ini文件中的DLL,我得到:

PHP启动:无法加载动态库'\ text \ wsf.dll'

没有它,一切都很好。以下是phpinfo的一些亮点:

PHP Version 5.4.6

extension_dirext ext ext

include_path: .;c:\php\includes;C:\PHP\wso2-wsf-php-bin-2.1.0-win32\scripts

路径:

c:\php;C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib;c:\php\ext;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\DMIX;C:\Program Files (x86)\Windows Live\Shared;c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Windows\idmu\common;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;



WSFC_HOME : C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c 

From the php.ini:
[wsf] 
wsf.home="C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c" 
wsf.log_path="C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\logs\" 
wsf.log_level=4 

wsf.rm_db_dir="C:\windows\temp\"

我在尝试在Process Monitor中启动PHP时也看过了这个过程。我看到c:\ php \ ext \ wsf.dll已加载。然后它启动一个依赖项列表,查看路径并在lib文件夹中查找大部分依赖项。

C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\axutil.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\axis2_engine.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\axiom.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\axis2_parser.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\guththila.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\neethi.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\rampart.dll
C:\Windows\SysWOW64\libeay32.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\neethi_util.dll
C:\PHP\wso2-wsf-php-bin-2.1.0-win32\wsf_c\lib\sandesha2_client.dll

写入错误日志:

[12-Sep-2012 12:48:12 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\wsf.dll' - The specified procedure could not be found. in Unknown on line 0

继续:

C:\PHP\ext\php_xsl.dll

我看到的最后一件事是尝试读取不存在的注册表键失败,Per Directory Values Key就是它所追求的。

建议?

1 个答案:

答案 0 :(得分:1)

我担心PHP的wso2与PHP 5.4不兼容 我试图在Linux上编译PHP的wso2扩展,并且仅使用PHP 5.3成功。 对于Windows可能存在同样的问题。

您可以尝试将PHP降级到5.3版,并检查它是否适用于这种情况。

我还应警告您不要在生产中使用此扩展名,原因如下:

  • 近一年前他们repo的最新承诺
  • JIRA大约一年没有进展
  • 在jira中被设置为此项目的项目经理的人似乎现在正在另一个项目上工作
  • 他们没有回应jira中的错误报告
  • 这个扩展已知linux上的稳定性问题(检查stackoverflow或他们的jira与keyworkds“wso2 php segmentation fault”)

在最近的项目中我们也应该使用wso2 php扩展,但经过一些研究后我们发现这个扩展不稳定,不再支持了。 不幸的是,目前我们还不知道该使用什么,并寻找其他解决方案。