如何实现通过Gzip压缩实现WordPress站点加速的各种方法

我最近都没有使用Gzip压缩,通过几天的研究学习,总结并分享下如何将 WordPress 站点开启 Gzip 压缩以达到加快传输的目的。

Nginx开启Gzip的方法

gzip on;
gzip_min_length  1k;
gzip_buffers     4 16k;
gzip_http_version 1.1;
gzip_comp_level 6;
gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied   expired no-cache no-store private auth;
gzip_disable   "MSIE [1-6]\.";
1行:开启Gzip(这是缙哥哥唯一不借助翻译就能看得懂的)
2行:不压缩临界值,大于1K的才压缩,一般不用改
3行:buffer,就是,嗯,算了不解释了,不用改
4行:用了反向代理的话,末端通信是HTTP/1.0,有需求的应该也不用看我这科普文了;有这句的话注释了就行了,默认是HTTP/1.1
5行:压缩级别,1-10,数字越大压缩的越好,时间也越长,看心情随便改吧,缙哥哥用的是6.
6行:进行压缩的文件类型,缺啥补啥就行了,JavaScript有两种写法,最好都写上吧,总有人抱怨js文件没有压缩,其实多写一种格式就行了。不过你要考虑自己的CDN之类的,如果静态文件已经丢出去了,也就没必要了!
7行:跟Squid等缓存服务有关,on的话会在Header里增加"Vary: Accept-Encoding",我不需要这玩意,自己对照情况看着办吧
8行:IE6Gzip不怎么友好,不给它Gzip

值得一提的是,如果你是使用宝塔面板,那么它已经默认给你开启了Gzip压缩功能,如下图所示:

 

Apache开启Gzip的方法

首先确保你的 Apache 已经加载了 mod_deflate 模块,然后在 httpd.conf 代码中加载以下代码:

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/json application/x-httpd-php application/x-javascript
</IfModule>

如果你没有权限修改你的主机,你也可以将以上代码复制到网站根目录的 .htaccess 文件。

PHP开启Gzip的方法

如果修改 Apache httpd.conf 文件无效,则可以通过修改 PHP 的 php.ini 方法:

打开 PHP 目录下的 php.ini 文件,找到 zlib.output_compression = Off,改成 zlib.output_compression = On,再把 ;zlib.output_compression_level 前面的;去掉,后面的-1改成1—9的值,1的压缩比率最低,建议取5。这样便可以实现所有 PHP 页面的 gzip 效果。

如果无法修改 php.ini 文件,则可以在需要 gzip 压缩的 PHP 文件头部加入:

if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
	ob_start('ob_gzhandler');
}else{
	ob_start();
}

既可以实现该 php 页面 gzip 压缩。

WordPress开启Gzip的方法

如果上述方法都无效,则将下面的代码复制到当前主题的 functions.php 文件中也可以实现 WordPress 整站 gzip 压缩:

//WordPress站点加速之开启Gzip压缩加快传输 - https://www.dujin.org/12613.html
add_action('init', 'wpjam_gzip_compression');
function wpjam_gzip_compression(){
	if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) {
		ob_start('ob_gzhandler'); 
	}else{
		ob_start(); 
	}
}

htaccess开启Gzip压缩

编辑站点根目录 .htaccess 文件,在最后面加上一下三种代码中的任意一种。
代码一

php_value output_handler ob_gzhandler

代码二

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
</IfModule>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css image/gif image/jpeg image/png application/x-javascript
</IfModule>

代码三

php_flag zlib.output_compression On
php_value zlib.output_compression_level 6

WordPress插件开启Gzip的方法

这里就有很多可以开启Gzip的插件了,缙哥哥随意举几个亲自尝试的例子,具体适用与否需要自己尝试。

WP Super Cache插件

如果你的 WordPress 已安装 WP Super Cache 缓存插件,可以在 WP Super Cache 设置 → 高级选项中勾选 Compress pages so they’re served more quickly to visitors.(Recommended) 一项,这样也可以开启Gzip压缩,想必很多人都见过,缙哥哥就不截图了!

WP Performance插件

如果你使用的是 WP Performance 插件,那就更简单了,直接在插件设置主页勾选

如何实现通过Gzip压缩实现WordPress站点加速的各种方法1技术教程主机格调

Gzippy插件

如果你使用的是 Gzippy 插件,启动插件即可。

index开启Gzip的方法

通过修改 WordPress 根目录 index.php 文件开启Gzip压缩,这是缙哥哥认为最愚蠢的办法!

为什么呢?众所周知,WordPress的更新换代好比换内裤,三天两头更新。更新一次你就得改一次,你说是不是最愚蠢的办法?但是,如果上方的你都不行的时候,倒是不妨使用这个方法试试!

进入 WordPress 网站根目录,修改 index.php 文件,找到

define(’WP_USE_THEMES’, true);

在后面加上:

//WordPress站点加速之开启Gzip压缩加快传输 - https://www.dujin.org/12613.html
ob_start(‘ob_gzhandler’)

缙哥哥在上面加个地址,以免你忘了这句话什么意思。别忘了升级WordPress之后重新加回去!

Gzip使用注意及说明

  • 如果在 .htaccess 文件中禁止了 Gzip 功能的话,那在 php.ini 文件中开启后也需在 .htaccess 文件中开启 Gzip,否则没有效果。
  • 开启 WordPress 的 Gzip 功能后,服务器将在页面传输前将页面压缩后传送,可以有效减少服务器的带宽使用,也可以加速页面下载。
  • 另外请注意只能选择一种方式来开启 WordPress Gzip 压缩,否则有可能造成冲突,请谨记。

经过测试,采用服务器压缩要比使用 PHP 压缩要更快,而且压缩之后更小。所以最好的方法还是直接让 Apache 直接进行 gzip 压缩。如果无法修改 Apache 的 httpd.conf 文件,再尝试去修改 php.ini 文件,最终才是使用修改 php 文件以及 WordPress hook 的方法。

【声明1】:如本站转载别的站的文章,我个人没有添加来源,您可以发电邮:admin#zhuji.gd 提醒我,我会尽快添加文章来源。 【声明2】:本博客不参与任何交易及中介服务,只记录 VPS 测评和优惠,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。
(0)
上一篇 11/03/2019 08:56
下一篇 11/03/2019 15:25

相关推荐

  • Xiuno BBS 插件合集免费下载含4.0.4官方原版程序

    Xiuno BBS 已经停止更新,最后版本号是Xiuno 4.0.4,官方主站和插件中心都已经关闭。到现在还没有一个站长能够接手进行二开。 本站自建了VPS极客论坛已关闭,基于Xiuno bbs 4.0.4,提供二手闲置 VPS 交易. 我将一些搜集的插件分享出来,其中有 zaesky 开发的 zhuhulan 1.6和1.7两个版本的主题。 Xiuno BBS 伪静态设置 虽然已经停更,不过 Xiuno 基本没有什么大BUG。该程序安装十分简单,上传到网站根目录,输入域名,安装就可以...

    技术教程 01/01/2021
    1840
  • WordPress 插件:WP Last Modified Info 告诉搜索引擎文章已更新

    我们要重视网站文章内容的日常更新,可以在在文章内容更新后都会主动备注最后更新时间。备注更新时间是为了让读者能够获得更新的信息,并且保持文章的新鲜度。 还可以使用WordPress 插件 WP Last Modified Info 来告诉搜索引擎这篇文章已经更新,但是不需要手动地备注发布时间。 WP Last Modified Info 并非简单修改文章的发布时间或者文章最后更新时间,而是在文章中增加了一个最后修改时间的代码。这段显示最近修改时间的代码...

    28/04/2020
    13.9K0
  • 哪种类型的网站最容易获得Adsense稳定收入?

    不管是通过什么方法来优化 Google Adsense 收入,万变不离其宗,有价值的原创优质网站才是王道,既是通过网站变现审核的基础,也将影响日后长久收入。 今天推荐 3 种最容易获得 AdSense 稳定收入的网站类型,以及解析每一种类型的变现窍门,期望这些信息能启发你创建更多高质量网站。 网站类型一:博客(博主创建并更新原创内容) 相对于某些网站拥有多个页面却甚少更新内容,正规且专业的博客显然更新频率更快。例如一些热门和...

    08/06/2019
    14.1K0
  • VPS硬盘不够用了/如何检查和清理 Linux 系统的硬盘空间

    VPS 硬盘如果不够用,可以升级或者添加新硬盘。不过我们可以尝试清理一下硬盘,释放一些空间。Linux 提供了几个用于分析和清理系统磁盘空间的内置命令,本文介绍一下如何使用这些命令来仔细查看硬盘使用情况并释放空间。本教程适用于 Ubuntu、CentOS、Debian 等操作系统。 Linux 检查硬盘空间 Linux 目前有两个命令可以用来查看硬盘空间,这些命令提供了整个系统可用磁盘空间和特定目录中磁盘使用情况的高级视图。 使用 df 命令...

    技术教程 20/09/2021
    5.2K0
  • 博客 SSL 检测 PCI DSS 不合规的解决方法

    前段时间就随便检测了一下泪雪博客的 SSL 证书,就提示 PCI DSS 不合规,当时也没有在意,因为 PCI DSS 是属于支付卡行业安全标准,泪雪博客并不涉及,所以也没有影响,这不就在昨天有个朋友也发现这个问题了,所以昨天有空就简单的看了一下,然后顺便就解决一下。 SSL 相信不用多说,就是网站需要安装 SSL 证书后,才能够开始 HTTPS 协议的访问,可以提升网站数据传输的安全性。 PCI DSS,全称 Payment Card Industry Data Sec...

    07/03/2019
    11.8K0
  • WordPress插件:WP Tabel Tag Gen 不需要手动添加表格代码

    WordPress 编辑器只提供了基本的文章编辑功能,只能满足基本需求。可以通过使用 WordPress 编辑器增强插件来增加编辑器功能。我经常要使用到表格,但是官方并不提供表格插入功能,可以通过使用  TablePress WordPress 表格插件,这个插件设置比较复杂,所以就弃用了。 WP Tabel Tag Gen是一款 使用非常简单直观的 WordPress 可视化表格插件,不需要手动添加表格代码。 本站提供的下载资源自带中文语言文件。 插件设置 1、上传启...

    03/09/2020
    25.5K0
  • RAKsmart 服务器限量秒杀,40G防御仅99刀,洛杉矶新品预售,美日VPS全场8折!!!

    RAKsmart 是一家由华人创办老牌海外 VPS 商家。RAKsmart 今年推出韩国、日本、新加坡、香港等多个数据中心。RAKsmart 的便宜 VPS 、高防服务器、站群服务器、独服在国内销售都不错。 RAKsmart 恢复了40/60/100G防御促销,E3-1230 40G防御仅$ 99,日本+美国站群、G/10G口大带宽不限流量。洛杉矶产品上线预售,限量20台。 活动时间:美国西岸圣何塞时间 9月26到10月31日。 服务器限量秒杀 线路包括:大陆优化,100M/不限;国际BGP...

    02/10/2020
    15.8K0
  • 正规ChatGPT代理 IdeaChat 让你在国内更稳定地使用 ChatGPT

    国内使用 ChatGPT 的教程非常复杂,没办法 OpenAI 最近在疯狂封 IP 和封账号。在国内如何突破 OpenAI 封锁使用 ChatGPT?推荐一下 IdeaChat,是一群中老年程序员开发的正规 ChatGPT 代理,IdeaChat 是一款基于 OpenAI 由人工智能驱动的对话式应用。IdeaChat 目前支持 GPT-4 和 GPT-3.5,可以根据个人需要切换。 IdeaChat 官网 点击访问 IdeaChat 官网 IdeaChat 优惠码 输入优惠码:ZHUJI; 享受九折优惠。 IdeaChat 值得推荐的...

    25/04/2023
    1.8K0
  • WinRAR 5.8 官方正式版无广告(有Key)分享

    现在常用的压缩软件有WinRAR,7-zip,360压缩,还有棒子的Bandizip。 这几个压缩软件,主要功能、压缩解压格式基本一样。他们的差异主要体现在压缩速度、压缩效率还有附加功能,比如WinRAR的压缩速度快、360的一键解压功能、7-zip的压缩率高、Bandizip的比较好看。 WinRAR,资格比较老,是使用最广泛的压缩软件,没有多余的附加功能。大陆版的免费WinRAR有广告,如果有注册码,无广告。 WinRAR 5.8 如何激活 安装后,打开压缩包...

    04/02/2020
    1370
  • Win 10 数字权利获取激活工具 Hwidgen 长期有效

    KMS 激活工具经常会失效,需要重新激活才可以继续使用。Win 10 数字权利获取工具通过获取系统数字许可证来进行激活,所以 HWIDGen激活可以长期有效。 Win 10 数字权利获取工具 HWIDGen 是由 Nsane 论坛会员 s1ave77 开发的 Win 10 数字权利激活工具。这款工具自动获取 Win 10 数字许可证激活,无需产品密钥,以最简单的方式永久激活,长期有效。 工作原理 当 Win 10 激活后自动生成与硬件ID对应的许可证,该许可证会存储到微软...

    25/05/2020
    37.5K0
返回顶部