我同时安装了xCache和Zend优化器,它给了我PHP致命错误:[Zend Optimizer] Zend Optimizer 3.3.3与第0行的Unknown中的XCache 1.2.1不兼容
我在安装文档中有一行,我应该将zend php.ini文件包含在普通的php.ini中,并确保xCache运行在Zend Optimizer中。
我的问题是如何在php.ini中包含文件以及如何确保xCache在Zend Optimizer之前运行?
答案 0 :(得分:4)
我遇到过同样的问题。 FWIW Zend Optimizer(不包括Zend平台)不是像XCache那样的操作码。我已经成功同时运行了两个。诀窍是替换以下行:
extension=xcache.so
有了这个:
zend_extension=/path/to/xcache.so
(请注意,zend扩展可能需要xcache.so库的完整路径)
希望这有帮助。
答案 1 :(得分:3)
所有PHP操作码缓存都是互斥的 - 包括:xCache,Zend Optimizer,APC或eAccelerator。不要试图同时使用它们。
答案 2 :(得分:0)
经典的笑话:“医生,当我做X时疼!” - “所以不要做X”
快速查看似乎表明两种产品都在PHP操作码级别上运行,特别是在错误消息的情况下,它们很可能是不兼容的。
答案 3 :(得分:0)
您可以通过在Zend Optimizer ini设置之前放置xcache ini设置来确保首先加载xcache。我不知道其他任何方式......
即。确保ini中的[xcache]和其他所有[xcache ...]部分都在加载Zend Optimizer之前(在Linux上应该类似于以下内容:zend_extension = / usr / local / Zend / lib / ZendOptimizer的.so)。
但正如其他回复中所提到的,将XCache和Zend Optimizer结合使用可能并不明智,特别是因为过去存在兼容性问题。如果你没有Zend Optimizer(即不使用Zend Guard受保护的脚本),可以安全地从php.ini中删除相关的配置行。