Drupal 6では、Webインターフェイスからcronを実行するたびに内部サーバーエラーが発生し、実行すると
drush cron
私はただ得る
Segmentation fault
ここで何が間違っている可能性があり、どのように修正できますか?
リソースの問題のようです。メモリの制限が原因である傾向があります。
Drushがサイトと同じphp.iniファイルを使用していることを確認します。
drush status
Drushに使用しているphpを示します。
次のコマンドを実行すると、cronの実行時にメモリ出力情報が得られます
drush cron -d
そのメモリスタックがphp.iniの制限に近い場合は、32Mbの整数に増やします。 (つまり、128mbから160mb)そして、もう一度テストします。
Metaltoadによると 、ビュー(preg_match()
を使用して正規表現を実行する他のモジュールの中で)は、メモリを消費し、segfaultを引き起こす暴走する正規表現を作成する可能性があります preg_match()
バックトラックのオーバーフローを防ぐことはできません 。
Webインターフェースからcronを起動した後、Apacheアクセスとエラーログで詳細を確認してください。
Cronをdrushで起動するときは、xdebugがインストールされていることを確認してください。トレース、メモリ使用量を記録し、phpがクラッシュした場合のスタックトレースを提供できます。