2011-03-21 4 views
12

데비안에서 PHP 5.3을 사용하고 php -m에 따라 'Phar'가로드되었습니다.'php pyrus.phar'가 실행되지 않습니다.

그러나 php pyrus.phar 또는 php pyrus.phar config-show을 실행하면 전혀 출력되지 않습니다.

무슨 문제 일 수 있습니까?

debian:~# php -v 
PHP 5.3.5-1 with Suhosin-Patch (cli) (built: Feb 19 2011 01:57:59) 
Copyright (c) 1997-2009 The PHP Group 
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 
    with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans 
    with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH 

php -i 나를 제공 : 나를 혼란 무엇

[...] 

Phar 

Phar: PHP Archive support => enabled 
Phar EXT version => 2.0.1 
Phar API version => 1.1.1 
SVN revision => $Revision: 305584 $ 
Phar-based phar archives => enabled 
Tar-based phar archives => enabled 
ZIP-based phar archives => enabled 
gzip compression => enabled 
bzip2 compression => enabled 
OpenSSL support => enabled 


Phar based on pear/PHP_Archive, original concept by Davey Shafik. 
Phar fully realized by Gregory Beaver and Marcus Boerger. 
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle. 
Directive => Local Value => Master Value 
phar.cache_list => no value => no value 
phar.readonly => On => On 
phar.require_hash => On => On 

[...] 

는 libxml2를 만 libxml을 나열 PHP> 5.3.1의 기본하지만 PHP는 -m에 의해 가능하도록되어 있다는 점이다. 저를 줄 것이다 -i 비록의 PHP는 :

libXML support => active 
libXML Compiled Version => 2.7.8 
libXML Loaded Version => 20708 
libXML streams => enabled 
+0

시도'PHP -d는 error_reporting = E_ALL pyrus.phar' 또는 다른 일반적인 함정 옵션을 제공합니다. 어떤 버전을 테스트 했습니까? 최신 다운로드 '2.0.0a2'가 나를 위해 작동하는 것 같습니다. – mario

+0

php -d error_report = E_ALL pyrus.phar 다시 출력이 전혀 발생하지 않습니다. 비록 내가 명령에서 pyrus.phar를 pyrus2.phar로 바꾸더라도 그것은 입력 파일을 열 수 없음을 말해 주지만 .... 그래서 뭔가 일어나고 있습니다. 예, 최신 pyrus를 시험하고 있습니다. – Raffael

+0

우분투에서 가지고있는 것과 똑같은 문제가 있습니다 : 우분투에서는 매력적이지만, 데비안 시스템에서는 작동하지 않습니다. 내가이 문제를 찾을 수 있는지 알게 될거야. –

답변

19

그것을 발견 :)

는 데비안은 수호신 패치와 PHP 버전을 설치합니다 보인다. 다음이 표시됩니다 -v PHP의 내 자신의 출력 :

web01:/home/berry# php -v 
PHP 5.3.5-1 with Suhosin-Patch (cli) (built: Feb 19 2011 01:57:59) 
Copyright (c) 1997-2009 The PHP Group 
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 
    with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH 

는 지금, 수호신이 문제를 일으키는 것 같다가의 Phar 파일이 실행되는 것을 허용하지 않습니다. 당신이 /var/log/user.log를 보면 다음과 같이 항목을 볼 수 :

web01:/home/berry# tail /var/log/user.log | grep pyrus 
Mar 23 11:27:50 web01 suhosin[17463]: ALERT - Include filename ('phar:///home/berry/pyrus.phar/PEAR2_Pyrus-2.0.0a2/php/PEAR2/Pyrus/ScriptFrontend/Commands.php') is an URL that is not allowed (attacker 'REMOTE_ADDR not set', file '/home/berry/pyrus.phar', line 40) 

우리가 아래 줄을 추가 만 CLI에서이 작업을 실행하고 이후의/etc/PHP5/CLI/conf.d/phar.ini에서이 문제를 해결해야합니다.

suhosin.executor.include.whitelist="phar" 

행운을 빕니다 :)

+0

현상금은 내 친구 야 ... 23 시간 후에! 감사! – Raffael

+0

건배, 문제가 해결되었다는 말을 듣고 반갑습니다. –

관련 문제