Can't get Zorba working on Windows 7 with PHP and Nginx

大城市里の小女人 提交于 2019-12-12 15:57:03

问题


I'm trying to install Zorba on a Windows 7 machine with the help of these instructions. I've completed the "Verify Zorba" section ok, but I can't complete the section "Enable Zorba extension in PHP". When I attempt to restart PHP, a Windows dialog box pops up saying;

Do I need to compile from source? The instructions say to compile Zorba from source but instead have downloaded the Windows installation package from the Zorba download page. Do I also have to compile from source? Surely not?

Missing zorba_api_wrapper.php The instructions say "locate the file zorba_api_wrapper.php" but I can't find a file of that name. There is a file called zorba_api.php so I've used that instead. Is that the correct file?

php-cgi.exe I'm running the CGI version of PHP. I start it from the command prompt by doing;

php-cgi -b 127.0.0.1:9000

Could that be what's causing the error dialog? I guess it's more common to have Apache start PHP. (I'm using Nginx not Apache.)

Update

As suggested by Rodolfo, I've added C:\Program Files\Zorba XQuery Processor 2.0.2\bin to the PATH environment variable and uninstalled an older version of Zorba. Now when I try to start PHP by doing;

php-cgi -b 127.0.0.1:9000

I get a different Windows dialog;

The info in the Problem Details is;

Problem signature:
  Problem Event Name:   APPCRASH
  Application Name: php-cgi.exe
  Application Version:  5.3.2.0
  Application Timestamp:    4b8ec866
  Fault Module Name:    php5ts.dll
  Fault Module Version: 5.3.2.0
  Fault Module Timestamp:   4b8ec7e7
  Exception Code:   c0000005
  Exception Offset: 000f56c0
  OS Version:   6.1.7601.2.1.0.768.3
  Locale ID:    2057
  Additional Information 1: 0a9e
  Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
  Additional Information 3: 0a9e
  Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

If I remove the line extension=zorba_api.dll from php.ini, PHP starts ok.


回答1:


>>Do I need to compile from source?
Windows Installation Package is fine, this should work.
>>Missing zorba_api_wrapper.php
This is included along with zorba_api.dll in [ZORBA_INSTALL_DIR]\share\php

The error could be caused by two reasons:
a) zorba_api.dll is not able to locate zorba_simplestore.dll. Make sure your zorba_api.dll is able to reach zorba_simplestore.dll, the easy way is through PATH environment variable.
b) you have an older zorba_api.dll not related to a newer zorba_simplestore.dll. Make sure you don't have an older version of zorba colliding with your current version.




回答2:


The error, Fault Module Name: php5ts.dll, while starting the Apache server is a known date bug (thread safety issue).

The work around was to modify httpd.conf as follows:

LoadModule php5_module "C:/PHP/php5apache2_2.dll"
PHPIniDir "C:/PHP"
# added
Loadfile "C:/PHP/php5ts.dll" 
Loadfile "C:/PHP/libpq.dll"

See this PHP Bug Report for more detail




回答3:


In my case compile option wasn't macth bettween zorba_api.dll and PHP. Then I cange PHP from VC6 to VC9.

But be sure If you use Apache, Apache also has to change to the virsion which let work PHP-VC9.

PHP can't initialize zorba_api's module



来源:https://stackoverflow.com/questions/7650585/cant-get-zorba-working-on-windows-7-with-php-and-nginx

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!