1

私はプロジェクトに Laravel 3 を使用しcronjob scriptています。

警告: ob_start(): 関数 ' mb_output_handler' が見つからないか、関数名が無効であり、通知: ob_start(): バッファの作成に失敗しました

これを修正する方法はありますか?

4

1 に答える 1

1

新しいサーバーは Ubuntu ですか? 開発サーバーと「新しいサーバー」は同じ OS ですか? PHPのバージョンは同じですか?

2 つのサーバーが完全に異なる可能性があります。

cronjob を表示できますか? #!/usr/bin/env php(呼び出しを介して特定の php バイナリを使用しようとしますか?

Ubuntu の 1 つの可能性:

CLI で実行される PHP は、Apache で実行される場合とは異なる場合があり、特に Nginx で php5-fpm を使用している場合は異なる可能性があります。

それぞれ独自の php.ini と異なる拡張機能をロードできます。

あなたが言ったように、あなたはUbuntuサーバーを使用しています。PHP 5.5 を使用している場合は、次の点に注意してください/etc/php5

/etc/php5/mods-available  # All mods available / installed
/etc/php5/cli/php.ini     # php.ini for CLI-called php5
/etc/php5/cli/conf.d      # Directory of symlinks to extensions in mods-available!
/etc/php5/apache2/php.ini # php.ini for Apache-run php5
/etc/php5/apache2/conf.d  # Symlinks to mods-available extensions

したがって、CLI、Apache2、PHP-FPM の php はすべて、異なる拡張機能をロードして、php.ini を分離してインストールできます。

おそらく、cli ベースのもの (おそらく cronjob が使用しているもの) は、異なるバージョンの PHP (!) であるか、異なる .ini ファイルおよび/または一連の拡張子をロードしている可能性があります。

于 2013-09-13T15:15:54.913 に答える