Leopard 10.5.6 Macbook Zend 1.6、Apache 2、PHP 5.2.5
我似乎无法使用 Zend_Search_Lucene api 进行索引。构建或打开索引会生成以下异常消息:
string(30) "错误的segments.gen 文件格式"
但是,索引/段文件是来自我网站的工作版本的 scp,我已将它们全部更改为 777,所以我不认为这是一个权限问题。
不确定尝试哪个方向 - 寻找一些想法。
Leopard 10.5.6 Macbook Zend 1.6、Apache 2、PHP 5.2.5
我似乎无法使用 Zend_Search_Lucene api 进行索引。构建或打开索引会生成以下异常消息:
string(30) "错误的segments.gen 文件格式"
但是,索引/段文件是来自我网站的工作版本的 scp,我已将它们全部更改为 777,所以我不认为这是一个权限问题。
不确定尝试哪个方向 - 寻找一些想法。
我的 PHP 二进制文件是 32 位的。PHP_INT_SIZE 是 4。这让 Zend 感到困惑,它检查系统的 int 大小,在 Leopard 上是 8 位。切换到 XAMMP(PHP 64 位二进制文件)解决了 Lucene 文件系统问题。它与区分大小写或路径无关。它与使用 Marc Liyanage pkg php/mysql/apache 有关。更新到最新的 Liyanage pkg 并没有解决这个问题。使用 XAMMP 做到了。耶。
如果您要部署到 Leopard 与 Linux/Unix,您还可能会遇到区分大小写的问题。
或者它可能是绝对路径与相对路径问题。如果我没记错的话,Zend_Search_Lucene 喜欢绝对路径。如果您的包含路径不同,则可能会导致问题。
一种选择是您在不同的机器上使用不同版本的 Lucene。 Zend 文档说 Zend 1.6 支持 Lucene 2.3 格式。也许另一台机器使用较旧/较新的 Lucene 版本。