宝塔PHP8.4如何开启Gzip_给PHP8.4站点启用Gzip压缩操作【教程】

Gzip压缩需在Web服务器层(Nginx/Apache)启用,宝塔中可通过图形界面一键开启、手动修改Nginx配置或配置Apache mod_deflate实现,最后用开发者工具验证Content-Encoding: gzip响应头。

如果您在宝塔面板中运行 PHP 8.4 环境的网站,但页面资源(如 HTML、CSS、JS)未被压缩传输,则可能影响加载速度。Gzip 压缩需在 Web 服务器层(Nginx 或 Apache)启用,而非 PHP 版本本身直接控制。以下是针对 PHP 8.4 站点在宝塔环境下启用 Gzip 压缩的具体操作步骤:

一、通过网站设置图形界面启用 Gzip

该方法适用于使用 Nginx 或 Apache 作为 Web 服务器且宝塔版本支持 Gzip 开关的站点,无需手动编辑配置文件,操作最简捷,适合新手用户。

1、登录宝塔面板,点击左侧菜单【网站】。

2、在网站列表中找到目标 PHP 8.4 站点,点击其右侧的【设置】按钮。

3、在弹出窗口中切换至【GZIP 压缩】选项卡。

4、勾选启用 GZIP 压缩复选框。

5、确认下方所列 MIME 类型包含 text/css、application/javascript、text/html、text/xml等常用类型(默认已包含)。

6、点击【保存】,系统自动重载 Nginx/Apache 配置。

二、通过 Nginx 配置文件手动添加 Gzip 规则

当图形界面选项不可见或需精细控制压缩等级与类型时,可直接修改站点对应的 Nginx 配置文件。此方式对 PHP 8.4 环境完全兼容,且支持扩展压缩范围(如字体、SVG 等)。

1、进入【网站】→选择目标站点→点击【配置文件】。

2、在配置文件末尾、最后一个 } 符号之前,插入以下完整 Gzip 配置块:

gzip on;

gzip_vary on;

gzip_proxied any;

gzip_min_length 1k;

gzip_comp_level 5;

gzip_buffers 16 8k;

gzip_http_version 1.1;

gzip_types image/svg+xml text/plain text/html text/xml text/css text/javascript application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript application/x-font-ttf application/vnd.ms-fontobject font/opentype font/ttf font/eot font/otf;

3、检查语法:点击右上角【重载配置】按钮,若提示“配置文件测试成功”,则保存生效。

4、重启 Nginx:返回【软件商店】→找到已安装的 Nginx →点击【重启】。

三、通过 Apache 配置启用 mod_deflate 压缩

若您的 PHP 8.4 站点运行于 Apache 环境,需确保 mod_deflate 模块已启用,并在站点根目录 .htaccess 或主配置中声明压缩规则。该方式不依赖 PHP 版本,对 PHP 8.4 完全适用。

1、进入【软件商店】→找到已安装的 Apache →点击【设置】→【配置修改】。

2、确认以下两行未被注释(即开头无 # 号):

LoadModule deflate_module modules/mod_deflate.so

LoadModule filter_module modules/mod_filter.so

3、在 Apache 主配置末尾或站点根目录的 .htaccess 文件中添加如下内容:

SetOutputFilter DEFLATE

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript application/xml

SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|pdf|zip|exe|avi|mp3|mp4|rar)$ no-gzip dont-vary

4、保存后,返回【软件商店】→点击 Apache 【重启】。

四、验证 Gzip 是否生效

无论采用上述任一方法,均需通过浏览器开发者工具确认响应头是否携带压缩标识,避免配置未实际加载或被 CDN 缓存覆盖。

1、打开目标网站任意页面,按 F12 打开开发者工具。

2、切换至【Network】标签,刷新页面。

3、点击一个 HTML 或 JS 文件,在右侧 Headers 面板中查找 Content-Encoding: gzip 字段。

4、若存在该字段,且 Response 大小明显小于 Size 列的原始大小,则表示 Gzip 已成功启用。

5、如未出现,检查是否启用了 CDN:若使用 CDN,请登录对应平台(如 Cloudflare、阿里云 CDN),确认其 Gzip 功能也已开启并设为“自动”或“始终开启”。