特定ファイルをサーバ上でgz圧縮するとファイルが壊れている、途中で切れている、という事象に遭遇しました。phpのgzopen(),gzwrite(),gzclose()で書き込んでいます。
他のファイルを再度gzで作成しても、問題ありません(ように見えた)。
さんざん試行錯誤して、原因は「ディスク容量がいっぱいだった」。orz…
他のファイルで問題なかったのは、単に既にそのファイルがもともと存在しており、同じサイズを上書きしていたからで、特定ファイルで発生したのは、ただ単にそのファイルまで来たところでディスク容量を使いきっていたからでした。
まぁ、こういうケースもあるので、似たような状況に遭遇したら、思い出してみてください。
こんなアホはわたしだけかと思いますが・・・。