nginx:启用基于主机名的gzip压缩

我有一台机器运行nginx为多个域提供httpstream量(使用相同的Lua代码库)。 对于一些域,我想启用gzip压缩。 是否可以为特定的一组域启用gzip压缩? 怎么样?

绝对如果你看一下文档,你可以看到把gzip放在下面的任何一个级别http, server, location, if in location并且在server级别上使用server_name定义域是可以接受的,我们可以把gzip沿着它。

首先检查你的nginx.conf文件的gzip on; 如果现在删除它。

然后您需要创build一个conf文件并定义您想要使用gzip的位置。

 server { server_name www.myexample.com; listen 80; gzip off; } server { server_name www.myotherexample.com; listen 80; gzip on; } 

是的。 你应该有一个服务器块为每个主机名,只是使用

 gzip on; 

要么

 gzip off; 

在每个服务器块内。 文档可以在这里find 。 唯一的障碍是如果你使用了某种通配符,或者没有每个域的服务器块。

例如

 server { server_name www.example.com; listen 80; root /what/ever; gzip on; } server { server_name www.example2.com; listen 80; root /what/ever2; gzip off; } 

如果这没有任何意义发布您的nginxconfiguration文件和您的网站文件(s),我们可以看看。