Amazon AWS が提供し、phar アーカイブとしてリリースされた PHP SDK 2 を使用すると、QA サーバーで次のエラーが発生します (dev は問題ありません)。
Fatal error: Uncaught exception 'PharException' with message
'__HALT_COMPILER(); must be declared in a phar' in /home/www/libs/s3/aws.phar:17
Stack trace: #0 /home/www/libs/s3/aws.phar(17): Phar::mapPhar('aws.phar')
#1 /home/www/libs/...
...
調べてみると、これはおそらく suhosin セキュリティ拡張に関連していることがわかりました。eaccelerator を実行し続ける必要があり、強化されたサーバーを維持したいと考えています。phpinfo() からの詳細は
PHP Version 5.3.19-1~dotdeb.0
This server is protected with the Suhosin Patch 0.9.10
Copyright (c) 2006-2007 Hardened-PHP Project Copyright (c) 2007-2012 SektionEins GmbH
eAccelerator
eAccelerator support enabled
Version 0.9.6.1
Caching Enabled true
Optimizer Enabled true
Check mtime Enabled true
...
php.ini には suhosin.executor.include.whitelist="phar" があります
他の誰かがこれを経験しましたか?
(AWS PHP サポートフォーラムに同様の質問を投稿しました)
suhosin がインストールされた状態で aws.phar を動作させる方法についてのアイデアはありますか?