1

私はすべての指示に従いました。私はUbuntu10.10を使用しています。ZendServerCeを使用します。

私の.bashrcには、ld_library_path、zendフレームワークライブラリなどがあります。

zfを実行できますが、エラーが発生します。

 Fatal error: Uncaught exception 'Zend_Exception' with message 'Security check: Illegal character in filename' in /usr/local/zend/share/ZendFramework/library/Zend/Loader.php:303
Stack trace:
#0 /usr/local/zend/share/ZendFramework/library/Zend/Loader.php(128): Zend_Loader::_securityCheck('Zend/Tool/Proje...')
#1 /usr/local/zend/share/ZendFramework/library/Zend/Loader.php(94): Zend_Loader::loadFile('Zend/Tool/Proje...', NULL, true)
#2 /usr/local/zend/share/ZendFramework/library/Zend/Tool/Project/Context/Repository.php(88): Zend_Loader::loadClass('Zend_Tool_Proje...')
#3 /usr/local/zend/share/ZendFramework/library/Zend/Tool/Project/Context/Repository.php(79): Zend_Tool_Project_Context_Repository->addContextClass('Zend_Tool_Proje...')
#4 /usr/local/zend/share/ZendFramework/library/Zend/Tool/Project/Provider/Abstract.php(85): Zend_Tool_Project_Context_Repository->addContextsFromDirectory('/usr/local/zend...', 'Zend_Tool_Proje...')
#5 /usr/local/zend/share/ZendFramework/library/Zend/Tool/Framework/Provider/Repository.php(187): Z in /usr/local/zend/share/ZendFramework/library/Zend/Loader.php on line 303

この行にコメントするZend_loader 303と、機能しているように見えますが、コントローラーなどを作成しようとすると、次のようなエラーが発生します。

[ 21.01.2011 10:26:40 ERROR] [ ZendExtensionManager.cpp : 654 ( sig_handler ) ] ZendExtensionManager got SIG 11 at pid 4781 ! 
[ 21.01.2011 10:26:40 ERROR] [ ZendExtensionManager.cpp : 667 ( sig_handler ) ] Crash happened during IDLE stage 
[ 21.01.2011 10:26:40 ERROR] [ ZendExtensionManager.cpp : 670 ( sig_handler ) ] The stack trace follows: 
[ 21.01.2011 10:26:40 SYSTEM] Obtained 20 stack frames 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/lib/ZendExtensionManager.so(+0x21c1e) [0xb718fc1e] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/lib/ZendExtensionManager.so(+0xf0b7) [0xb717d0b7] 
[ 21.01.2011 10:26:40 SYSTEM] [0xb78d3400] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x81ccc07] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x830e044] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x82e2961] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php(execute+0x212) [0x82e4032] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/lib/debugger/php-5.3.x/ZendDebugger.so(+0x4bed6) [0xb2c72ed6] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x830daef] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x82e2961] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php(execute+0x212) [0x82e4032] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/lib/debugger/php-5.3.x/ZendDebugger.so(+0x4bed6) [0xb2c72ed6] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x830daef] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x82e2961] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php(execute+0x212) [0x82e4032] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/lib/debugger/php-5.3.x/ZendDebugger.so(+0x4bed6) [0xb2c72ed6] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x830daef] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php() [0x82e2961] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/bin/php(execute+0x212) [0x82e4032] 
[ 21.01.2011 10:26:40 SYSTEM] /usr/local/zend/lib/debugger/php-5.3.x/ZendDebugger.so(+0x4bed6) [0xb2c72ed6] 
Segmentation fault

どうすればこの問題を解決できますか?

4

3 に答える 3

0

エラーがどのように発生したかを理解しています。

ファイル名にutf8文字エンコードを使用している私のオペレーティングシステム。utf8-phpでエンコードされたファイル名が端末によって実行されるとエラーが発生します。「」は私の言語の上位の「ı 」です。しかし、phpは' i 'であることを期待しています。iconvを使用してphpでファイル名をASCIIに変更すると、現時点ではファイルの場所が見つからないため、エラーが再度発生します。問題の原因を見つけましたが、それでも解決策がわかりません。

ありがとうございました。

于 2011-02-08T07:19:42.087 に答える
0

これはZFの問題ではないと思います。これは、phpのバグまたは設定ミスのいずれかです。

Zend_Loaderに置き換えて、ここに出力を投稿して、疑惑を確認できるようにします

protected static function _securityCheck($filename)
{
    var_dump($filename); exit;
}

また、これを試してください:

mb_internal_encoding('UTF-8');
mb_regex_encoding('UTF-8');

私が間違っていたらごめんなさい。私はここの専門家ではありません。

于 2011-02-08T09:10:51.383 に答える
0

if test "@php_bin@" != '@'php_bin'@'; thenzf.shでは、行の直前に追加する必要があります。

LANG=C
export LANG

すべてが今機能しています、そして私は幸せです...

于 2011-02-14T07:38:37.847 に答える