4

ob_start('ob_gzhandler')が存在する場合、ブラウザでコンテンツエンコーディングエラーをスローするサイトがあります。ステートメントを削除すると、正常に実行されます。

  • このサイトは、他の多くのサイトと同じフレームワーク、サーバー、およびホスティングパッケージで実行されます。ステートメントがそこにあるかどうかに関係なく、それらはすべて機能します。
  • このステートメントは、アプリケーションコードではなくフレームワーク内にあるため、すべてのサイトで共有されます。
  • 作業サイトと非作業サイトの構成に違いはありません。
  • サイトは、まったく同じコードとデータを使用して、ローカルで正常に実行されます。
  • curl / wgetを使用してサイトをフェッチでき、返されたHTMLはブラウザーで正常にレンダリングされます。
  • 応答ヘッダーはまったく同じですが、ステートメントがありません。

これで、リモートサーバー上のすべてのコードを削除し、すべてを再アップロードしました。まだ変化はありません。次のステップは、サイトを再インストールして最初からやり直すことですが、すべてのデータを失いたくありません。

ポインタ、提案、または解決策はありますか?

4

3 に答える 3

3

通常、私は以下を行い、それは私のために働きます、それを試してみてください

あなたが始めるページの一番下に書くob_end_clean();ob_flush();ob_start();

参照:

ob_end_clean();

ob_flush();

于 2011-03-26T10:49:51.953 に答える
2

このコード行を開始するだけで、すべてがうまくいきます。

while (ob_get_level() > 0) { ob_end_clean() ; } 
于 2013-03-03T14:14:01.520 に答える
1

Apacheのgzip圧縮をすでに使用している場合(CSS / JSは私が見る限り圧縮されているため、見た目ではそうです)、ob_start('ob_gzhandler')を使用するとその圧縮が圧縮されます...そしてブラウザはそれを処理できなくなります。

もちろん、私はいつもApacheを使用してそれを行ってきたので、訂正の下で話していますが、あなたは物事を二重に圧縮しているように見えます。そのため、「ob_gzhandler」ステートメントがなくても機能します。

他のサイトの.htaccessファイルを確認し、実行しているサイトと比較してください。zacoders.netとjadeit.co.zaでDrupalを実行していることがわかりませんが、jadeitで実行しているのと同じ問題があります。 .co.zaは、あなたが言ったのと同じフレームワークではないと私に思わせますか?肩をすくめる

于 2011-03-26T11:14:05.953 に答える