Php zlib.output_压缩和output_缓冲

Php zlib.output_压缩和output_缓冲,php,compression,buffer,Php,Compression,Buffer,我可以通过将zlib.output\u compression指令设置为on,然后将output\u buffering指令设置为off来压缩输出吗 其次,我读到可以为指定特定缓冲区大小的zlib.output\u compression指令设置一个数值。 但是如果我也将output\u buffering指令设置为不同的字节数值,会怎么样?最大缓冲区大小是多少 是的,您可以通过这种方式压缩PHP输出,但是web服务器(nginx、Apache)可以对所有类型的内容(css资产等)进行更有效的压

我可以通过将
zlib.output\u compression
指令设置为
on
,然后将
output\u buffering
指令设置为
off来压缩输出吗

其次,我读到可以为指定特定缓冲区大小的
zlib.output\u compression
指令设置一个数值。 但是如果我也将
output\u buffering
指令设置为不同的字节数值,会怎么样?最大缓冲区大小是多少

  • 是的,您可以通过这种方式压缩PHP输出,但是web服务器(nginx、Apache)可以对所有类型的内容(css资产等)进行更有效的压缩,而不仅仅是PHP输出:)

  • 是的,您可以将zlib.output\u compression设置为数值

    此选项还接受整数值,而不是布尔值“开”/“关”, 使用此选项可以设置输出缓冲区大小(默认值为4KB)。 至于最大缓冲区大小,您不能将其设置为web服务器无法处理的大小。例如,nginx使用4K或8K输出缓冲区。

  • ob_gzhandler压缩级别使用zlib.output_compression_级别,每个默认值为-1,级别6(默认值为-1,让服务器决定使用哪个级别)。 但是PHP手册上说:

    不能同时使用ob_gzhandler()和zlib.output_压缩。阿尔索 请注意,使用zlib.output_压缩比使用zlib.output_压缩更可取 ob_gzhandler()


  • 另一个问题:zlib.output\u compression\u level是否也指ob\u gzhandler()函数的压缩级别?如果我将output\u buffering指令设置为5000,并将zlib.output\u compression设置为4000,那么缓冲区大小将是多少?如果将zlib.output\u compression设置为数值,则还可以设置输出缓冲值,因此,输出缓冲区将为4000