左右不逢缘 发表于 2021-8-6 14:07:33

我把nginx自带的gzip和discuz的gzip同时开启了,访问速度慢了

nginx默认自带gzip压缩已开启,discuz 打开config/config_global.php文件,找到$_config['output']['gzip'] = '0';代码,将其修改为$_config['output']['gzip'] = '1';就行了




我把nginx和discuz 的gzip同时开启了,速度不快反而慢了,是什么原因呢? 难道是压缩大小不一样吗?


麻烦测试下

http://www.sosoba.org感觉速度慢了

拾光 发表于 2021-8-6 14:08:05

补充一下

因为数据量太大了, 我把 discuz的 CSS 和JS 图片 以及数据库都分离了,顺便加了一个云redis
但是访问速度还是有点慢,不知道咋回事

Discuz智能体 发表于 2025-3-21 07:40:48

在同时开启Nginx的Gzip和Discuz的Gzip压缩时,可能会导致性能下降,原因主要有以下几点:

1. **双重压缩**:Nginx和Discuz都开启了Gzip压缩,这意味着数据会被压缩两次。第一次由Discuz压缩,第二次由Nginx再次压缩。这种双重压缩不仅不会带来额外的性能提升,反而会增加CPU的负担,导致响应时间变长。

2. **压缩级别不一致**:Nginx和Discuz的Gzip压缩级别可能不同。如果Nginx的压缩级别较高,而Discuz的压缩级别较低,可能会导致Nginx在已经压缩过的数据上再次进行高强度的压缩,进一步增加CPU的负载。

3. **缓存失效**:双重压缩可能会导致缓存失效,因为Nginx可能会认为每次请求的内容都是新的,从而无法有效利用缓存。

### 解决方案

1. **关闭Discuz的Gzip压缩**:建议关闭Discuz的Gzip压缩,仅保留Nginx的Gzip压缩。这样可以避免双重压缩带来的性能问题。

   在Discuz的配置文件 `config/config_global.php` 中,找到以下代码:
   $_config['output']['gzip'] = '1';
   将其修改为:
   $_config['output']['gzip'] = '0';

2. **优化Nginx的Gzip配置**:确保Nginx的Gzip配置是合理的。以下是一个常见的Nginx Gzip配置示例:
   gzip on;
   gzip_min_length 1k;
   gzip_comp_level 2;
   gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
   gzip_vary on;
   gzip_disable "MSIE \.";

   - `gzip_min_length 1k;`:设置最小压缩文件大小,小于1KB的文件不压缩。
   - `gzip_comp_level 2;`:设置压缩级别,级别越高压缩率越高,但CPU消耗也越大,建议设置为2或3。
   - `gzip_types`:指定需要压缩的文件类型。
   - `gzip_vary on;`:启用Vary头,确保代理服务器正确处理缓存。
   - `gzip_disable "MSIE \.";`:禁用对IE6及以下版本的Gzip压缩。

3. **启用Nginx的缓存**:通过启用Nginx的缓存机制,可以进一步提升性能。例如:
   proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off;

   server {
       location / {
         proxy_cache my_cache;
         proxy_pass http://backend;
         proxy_cache_valid 200 302 10m;
         proxy_cache_valid 404 1m;
       }
   }

### 总结

双重Gzip压缩不仅不会提升性能,反而会增加服务器的负担。建议关闭Discuz的Gzip压缩,仅保留Nginx的Gzip压缩,并优化Nginx的Gzip配置。这样可以有效提升网站的访问速度。

如果你有其他问题或需要进一步的帮助,请随时联系我。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 我把nginx自带的gzip和discuz的gzip同时开启了,访问速度慢了