0

インストール手順に従ったと思いますが、明らかに何かを見逃しています。基本的に、php.iniファイルのDLLを使用すると、次のようになります。

PHPの起動:ダイナミックライブラリ'ext\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\"

また、ProcessMonitorで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

そして、私が最後に目にするのは、そこにないレジストリキーの読み取りに失敗したことです。ディレクトリごとの値のキーは、その後のキーです。

提案?

4

1 に答える 1

1

残念ながら、PHP 用の wso2 は PHP 5.4 と互換性がありません。Linux で PHP 用の wso2 拡張機能をコンパイルしようとしましたが、PHP 5.3 でしか成功しませんでした。おそらくWindowsにも同じ問題があります。

PHP をバージョン 5.3 にダウングレードしてみて、この場合に動作するかどうかを確認してください。

また、次の理由により、この拡張機能を本番環境で使用しないように警告する必要があります。

  • 彼らのレポへの最新のコミットはほぼ1年前に行われました
  • 彼らのJIRAも約 1 年間進歩がありません
  • jira でこのプロジェクトのプロジェクト マネージャーとして設定されている人は、現在別のプロジェクトに取り組んでいるようです
  • 彼らはジラのバグレポートに応答していません
  • この拡張機能には、Linux での既知の安定性の問題があります (keyworkds "wso2 php segmentation fault" を使用して、stackoverflow または jira を確認してください)。

最近のプロジェクトでは、wso2 php 拡張機能も使用することになっていますが、調査の結果、この拡張機能は不安定であり、サポートされていないことがわかりました。残念ながら、今のところ、代わりに何を使用すればよいか分からず、他の解決策を探しています.

于 2012-09-13T14:14:51.813 に答える