質問: phpでセグメンテーション違反を追跡しますか? php(apacheエラーログに報告されている)のセグメンテーションエラーを追跡する比較的簡単な方法を探しています。これは現時点での私のlampセットアップです:linux:opensuse 11.3 x86_64 apache:2.2.15-3.7 mysql:5.1.46-2.18 php:5.3.2-1.31問題のコードは私自身のものではなく、gallery2です。 http://gallery.menalto.com 典型的なシナリオは、ギャラリーのメインページに移動しますが、サムネイルは表示されませんが、エラーログ内のセグメンテーションフォールトエラーの新しいセット。そのソフトウェアの相対的な複雑さを考えると、単純な形式のデバッグには特に適していません。コードをステップスルーして、何が起こっているのかを正確に確認できるようにしたいと思います。 「解決策」これまでこれまで見てきたことは、「比較的痛みのない」とはほど遠いものでした。このサーバー(以前のバージョンのlampソフトウェアパッケージ)および他のサーバーでgallery2を正常に使用したため、現在の構成に何か欠陥があると思いますが、障害の発生場所を確認できず、修正または回避してください。
回答: http://sourceforge.net/tracker/index.php?func=detail&aid=1692166&group_id=7130&atid=1071 および http://gallery.menalto.com/ node/62436#comment-22857 ?apache_setenvを使用するか、urlを2回gzipで圧縮することで一般的な問題があるようです(シナリオに応じて-前者はサムネイルが表示されない可能性が高いようです): 問題は、mod_deflateがurlに基づいてデータを再度gzipしようとするため、一部のシステムで破損が発生することだと考えています。この場合、送信するファイルをgzipしないように指示すると役立ちます。 phpにバグがある可能性があります。 $gallery->setconfig('apachesetenvbroken', 1);をconfig.phpに追加して、apache_setenv()関数の使用を無効にしてみてください これは、あなたが尋ねている質問に対する答えではありません(プラグインまたはコマンドラインphpとgdbで zend framework を使用する以外に、phpでセグメンテーションフォールトをデバッグする方法がわかりません).