我在Windows Server 2008 R2上安装了Plesk 11.5。 在Plesk安装上,我有3个不同版本的PHP。
PHP 5.2.17 - PHP 5.3.27 - PHP 5.4.16
我想安装的内容如下: 在PHP 5.2.17上:Ioncube - SourceGuardian - ZendOptimizer 在PHP 5.3.27:Ioncube - SourceGuardian - ZendGuard 在PHP 5.4.16:Ioncube - SourceGuardian - ZendGuard
我的PHP是线程安全的,所以对于IonCube和SourceGuardian,我下载了ts版本。 我将相应的.dll和.win文件放在ext文件夹中,用于每个PHP安装,然后我在php.ini中调用它们,如下所示:
zend_extension_ts = “E:\的Parallels \的Plesk \附加\ PleskPHP5 [X] \分机\ extension_name.dll”
其中[x]是与每个PHP版本对应的地址,extension_name.dll是扩展名的名称(如果我调用sourceguardian,则为extension_name.win)。
现在出现问题:
在PHP 5.2.17:IonCube工作 - SourceGuardian给出500内部错误 - ZendOptimizer工作 在PHP 5.3.27:没有任何作用[就像PHP甚至没有查看那些调用行!] 在PHP 5.4.16:没有任何作用[就像PHP甚至不看那些调用行!]
现在,在每种情况下,我都测试了与我的PHP版本相对应的那些文件的所有可用版本。例如,对于SourceGuardian,我测试了PHP 5.3的x86和x64以及VC6版本。我也尝试将它们放入各自独立的文件夹中。例如:IonCube / extension_name.dll。但似乎PHP并没有看到我在那里调用的东西。
我检查了phpinfo()输出,我确信我正在编辑正确的php.ini文件。
如果你给我解决这个问题的方向,我将非常感激。
提前致谢
答案 0 :(得分:0)
你的预感实际上是正确的,因为在PHP 5.3中删除了zend_extension_ts。将zend_extension用于5.3及以上版本。