在PHP脚本(PHP5.3 / Debian)中包含PHAR文件



我试图在我的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工作中最常见问题的解决方案。

最新更新