Magento インデクサーで奇妙な問題に遭遇しました。コマンドラインで実行しようとしたのですが、何を書いてもヘルプ画面に戻ってしまいます。を実行php -f indexer.php info
しても、ヘルプ画面が表示されるだけで、画面にもシステム ログにもエラー メッセージは表示されません。インデクサーが実行されない理由を確認するには、何を確認すればよいですか?
回答ありがとうございます。
私は答えを見つけました。スクリプトを実行したくないサーバーでは、php-cli
代わりにphp
. サーバーの設定が関係している可能性があります。
として実行したphp-cli indexer.php info
ところ、期待どおりの結果が得られました。
ほとんどの場合、シェル ファイルが変更されています。次の関数は、ヘルプ画面を表示する責任があります。shell/abstract.php で確認してください。次のようになります。
protected function _showHelp()
{
if (isset($this->_args['h']) || isset($this->_args['help'])) {
die($this->usageHelp());
}
}
_args
関数内で配列をデバッグしてみてください。配列が提供したものでない場合は_parseArgs
、同じファイル内の関数をチェックアウトしてください。
引数を で区切る必要があります--
か?
php -f indexer.php -- info