somefile.php への ajax 呼び出しがあります。私は、php スクリプトで単純なタスクを実行し、ユーザーにデータを送り返すだけでなく、非常に時間のかかるタスクを実行したいと考えています。そのため、最初の単純なタスクの後に出力をフラッシュする必要があります。おそらくgzipが有効になっているため、機能しません。
私は間違いなく、すべての仮想ホストで gzip を無効にしたくありません。また、somefile.php があるすべてのフォルダーでも無効にしたくありません。この特定のファイルに対して無効にしたいだけです。それは可能ですか?
編集:
これは、Apache conf に含めたものです。
<FilesMatch \.php$>
SetEnv no-gzip 1
</FilesMatch>
これは私のphpスクリプトです:
<?php
$sucesss = @apache_setenv('no-gzip', 1);
@ini_set('zlib.output_compression', 0);
@ini_set('implicit_flush', 1);
ob_start();
for($i=0;$i<10;$i++)
{
echo 'printing...';
ob_flush();
flush();
sleep(1);
}
?>
うまくいきません。10 秒後もすべての出力が一緒に表示されます。