php - 对于 php flush - 如何禁用特定文件的 gzip?

标签 php apache apache2

我有一个对 somefile.php 的 ajax 调用。我希望 php 脚本执行一个简单的任务,而不是将数据发回给用户,而不是执行非常耗时的任务。所以我需要在第一个简单任务后刷新输出。它不起作用,可能是因为我启用了 gzip。

我绝对不想在所有虚拟主机上禁用 gzip,也不想在 somefile.php 所在的所有文件夹中禁用 gzip。我只想为这个特定文件禁用它。这可能吗?

编辑:

这是我在我的 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 秒后我仍然看到所有输出。

最佳答案

我一直在寻找同一问题的解决方案。这对我有用,但不幸的是,它似乎不是一个有效的 header 。

<?
header("Content-Encoding: none");
?>

关于php - 对于 php flush - 如何禁用特定文件的 gzip?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10267061/

相关文章:

php - 如何在不重新加载页面的情况下运行php函数

PHP-CI : How to Combine 2 arrays from few tables in databases?

javascript - 单击不同 div/部分上的链接后,通过 html(或 php)更新 div/部分

php - 使用 Maatwebsite 的 laravel Excel impoirtation 找不到一些列

java - 如何将我的数据库目录指定给apache tomcat

php - 将文件上传到同一服务器上的子域 - 权限被拒绝

java - 运行配置单元 0.12,出现 slf4j 错误

apache - 德类、 Apache 。日志文件占用了所有磁盘空间

elasticsearch - Filebeat 6.1.0 和 exclude_lines 选项

ssl - 基于名称的虚拟主机服务于同一个 SSL 站点