我正在使用这个片段:
// ... snip
header("Content-Encoding: gzip");
include some_file;
// ... snip
提供压缩内容。
我可以以这种方式提供哪些类型的编码。即我可以为 some_file 输入什么?
我正在使用这个片段:
// ... snip
header("Content-Encoding: gzip");
include some_file;
// ... snip
提供压缩内容。
我可以以这种方式提供哪些类型的编码。即我可以为 some_file 输入什么?
这只是告诉接收方,发送方使用 gzip 压缩算法压缩了有效负载,并且在收到时需要对其进行解压缩。例如,服务器可能会压缩一个非常大的页面并将其发送给客户端,客户端将需要对其进行解压缩,然后才能对其进行进一步处理。
正如@Evert 指出的那样,客户端必须能够接受压缩数据。
这与下载 gzip 档案没有任何关系,因此文件类型无关紧要。
如果要指定要下载的文件的类型,可以使用Content-Type
标头来完成。例如:
header("Content-Type: application/gzip"); // for GZIP archive files
header("Content-Type: application/zip"); // for ZIP archive files
或更笼统地说:
header("Content-Type: application/octet-stream"); // for arbitrary binary data
一切,只要它被压缩。但是您应该只在客户端发送以下文件时提供这样的文件:Accept-Encoding: gzip