我试图在我的PHP脚本中包含一个PHAR文件(PHP存档),它在WAMP上工作得很好,但在我的debian服务器上不行!
我的服务器有PHP5.3(包括PHAR扩展原生!),但我的脚本停止时,包括PHAR(实际上是Silex)
我的代码(file_exists() works fine):
<?php
require_once __DIR__.'/../vendor/silex.phar';
我看到phpinfo()启用了PHAR。
然而,我尝试了很多方法来纠正这个问题:
- 我有
AddType application/x-httpd-php .phar
在我的httpd.conf - 也,我试图修复一个错误:http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=639268
- 我看到这个:http://www.shaunfreeman.co.uk/article/A-Phar-problem,但没有解决我的问题…
什么作品……有办法吗?
当您将PHP与Suhosin补丁一起使用时,您可能需要在Suhosin .ini中启用phars。
您可以将这行添加到suhosin.ini
suhosin.executor.include。白名单
如果不这样做,脚本将静默失败
这在debian和ubuntu上很常见
在Silex文档的陷阱部分中记录了PHAR工作中最常见问题的解决方案。