Doc #65115 [Ana->Csd]: flush() disables compression from ob_gzhandler

[email protected] Thu, 25 Jan 2024 13:36:34 +0000
Newsgroups php.doc.bugs
Message-ID <[email protected]>
Edit report at https://bugs.php.net/bug.php?id=65115&edit=1

 ID:                 65115
 Updated by:         [email protected]
 Reported by:        [email protected]
 Summary:            flush() disables compression from ob_gzhandler
-Status:             Analyzed
+Status:             Closed
 Type:               Documentation Problem
 Package:            Output Control
 Operating System:   linux
 PHP Version:        5.4.16
-Assigned To:        
+Assigned To:        girgias
 Block user comment: N
 Private report:     N

 New Comment:

Closed via https://github.com/php/doc-en/pull/3126


Previous Comments:
------------------------------------------------------------------------
[2016-09-28 14:39:18] [email protected]

I've just had a look at your submitted patch (edit.php.net), Paul.
It seems that it's not complete, because the man page would still
say:

| also doesn't affect PHP's userspace output buffering mechanism.
| This means you will have to call both ob_flush() and flush() to
| flush the ob output buffers if you are using those.

According to what has been said in this ticket this info is wrong.

------------------------------------------------------------------------
[2013-06-25 15:40:59] [email protected]

flush() causes Apache2 to send it's headers, so the gzhandler cannot send any headers and does nothing any more

------------------------------------------------------------------------
[2013-06-25 14:05:54] [email protected]

Ok, my explanation pretty much applies to the Apache SAPI.

Due to premature flush()'ing the ob_gzhandler cannot set its headers anymore when it's actually run.

------------------------------------------------------------------------
[2013-06-25 13:56:15] [email protected]

I'm using the apache 2.0 SAPI.

The build of PHP I used to confirm the bug doesn't include XHProf (I wanted a clean build to report on). 

I built with: 
Command 	'./configure' '--with-apxs2=/usr/local/apache2/bin/apxs' '--with-mysql=mysqlnd' '--with-gd' '--enable-soap' '--with-libxml-dir=/usr/lib/' '--with-mysql-sock=/tmp' '--with-tidy' '--with-jpeg-dir=/usr/lib/' '--with-xsl' '--with-curl' '--with-zlib' '--enable-gd-native-ttf' '--with-openssl' '--with-mcrypt' '--with-pdo-mysql=mysqlnd' '--with-mysqli=mysqlnd' '--with-bz2' '--enable-bcmath'

------------------------------------------------------------------------
[2013-06-25 13:49:38] [email protected]

Looks like my explanation off the top of my head was not correct.

Which SAPI are you using? Does XHPROF override SAPI methods?

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=65115


--
Edit this bug report at https://bugs.php.net/bug.php?id=65115&edit=1