ページが真っ白になる問題(途中)

かなり以前からたまに発生していて、未だに原因を特定できていないのですが、希にページキャッシュから表示したページが真っ白(0バイトのbodyが返ってくる)になる現象があります。

本日もこの現象が発生して、その環境でデバッグ情報を埋め込んだところ、sfCacheFilterのexecuteまでは正常に終わっているようでした。

これまでは、sfCacheFilterでキャッシュファイルを読み込むのに失敗(キャッシュファイルが壊れているなど)して真っ白になっていると想像していたのですが、sfCacheFilterでページキャッシュを読み込んだ後に、内容をダンプしてみたところ、正しく読み込めていました。

なので、sfCacheFilter以降の処理(sfRenderingFilter)で問題が発生しているものと思われます。


本日ここをデバッグしようとしてlib配下のsfRenderingFilterにデバッグ情報を埋め込んだのですが、sfRenderingFilterはcore_compileにキャッシュされるため、symfony ccしないと反映されないんですよね。なのでsymfony ccを実行したところ、今度は現象が再現しなくなってしまいました・・・。


次回問題に遭遇した折には、core_compileを直接書き換えてデバッグしてみます。(と覚えておくためのメモです・・・)

      • -

18:50追記:再発したので、再調査したところ、sfWebResponse->sendContent()内で「ヘッダのみ」と判断して、コンテンツ本体を送信していないようでした。