提前确定好要规范化的主域名格式,二选一即可:带www前缀(如https://www.example.com)、不带www前缀(如https://example.com),全站所有非主域格式的地址都将301重定向到该主域。
操作前必须备份对应文件,避免配置错误导致站点无法访问:宝塔面板用户直接在站点设置页导出Web服务配置文件;独立服务器用户备份Nginx/Apache的站点配置文件、站点根目录的.htaccess(Apache)、web.config(IIS)文件。
登录ZBlog后台,依次进入【站点设置】→【全局设置】,找到“网站地址”选项,直接填写你确定好的规范化主域,末尾不要加斜杠,比如填写https://www.example.com,点击保存设置。
进入【站点设置】→【固定链接】,选择统一的链接格式,推荐使用“{%host%}/{%category%}/{%id%}.html”格式,不要同时启用多种链接格式,保存后点击右上角的“更新重建”按钮,选择“重建所有页面与分类”,完成全站链接更新。
宝塔面板用户进入站点设置→配置文件,替换对应server块内容;独立服务器用户编辑/etc/nginx/conf.d/下对应站点的配置文件,完整可复制配置如下:
``` 所有HTTP请求统一跳转HTTPS主域 server { listen 80; server_name example.com www.example.com; return 301 https://www.example.com$request_uri; } 不带www的HTTPS请求跳转带www主域 server { listen 443 ssl; server_name example.com; 以下ssl证书路径宝塔用户无需修改,独立服务器替换为自己的证书路径 ssl_certificate /www/server/panel/vhost/cert/example.com/fullchain.pem; ssl_certificate_key /www/server/panel/vhost/cert/example.com/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; return 301 https://www.example.com$request_uri; } 主站点原有配置,无需修改 server { listen 443 ssl; server_name www.example.com; 原有ssl配置、伪静态配置、根目录配置等保持不变 } ```配置完成后执行nginx -t命令校验配置,返回success后执行systemctl reload nginx重载生效。如果你的主域是不带www的,将上述代码中所有www.example.com和example.com互换即可。
直接编辑站点根目录的.htaccess文件,将以下代码粘贴到文件最开头,原有ZBlog伪静态规则放在下方即可:
``` RewriteEngine On 强制HTTP跳转HTTPS主域 RewriteCond %{HTTPS} !=on RewriteRule ^(.)$ https://www.example.com/$1 [L,R=301] 不带www跳转带www主域 RewriteCond %{HTTP_HOST} ^example.com [NC] RewriteRule ^(.)$ https://www.example.com/$1 [L,R=301] ```如果主域是不带www的,将代码中www.example.com和example.com互换,保存后立即生效。

首先安装IIS URL重写模块,官方下载地址:https://www.iis.net/downloads/microsoft/url-rewrite,安装完成后编辑站点根目录的web.config文件,将以下规则粘贴到
保存后重启IIS站点即可生效,主域不带www的替换对应域名即可。
不要直接用浏览器测试,避免缓存导致结果不准确,使用HTTP状态码查询工具:https://tool.chinaz.com/pagestatus/,依次测试以下4类地址,确认全部返回301状态码且跳转到目标主域对应路径:
随机打开3-5篇文章、分类页、标签页,查看页面内的所有内链地址是否全部为规范化主域格式,如果存在旧域名链接,再次进入ZBlog后台点击【更新重建】→【重建全部数据】即可批量替换。
立即恢复之前备份的配置文件,Nginx执行nginx -t查看是否有语法错误;Apache检查.htaccess规则是否有拼写错误;IIS检查web.config的XML格式是否闭合。
检查是否同时在ZBlog后台插件和服务器配置了跳转规则,仅保留服务器端的跳转规则即可;同时确认SSL证书已经覆盖所有绑定的域名(带www和不带www都需要包含在证书内)。
检查重定向规则是否缺少路径参数:Nginx规则要带$request_uri,Apache规则要带$1,IIS规则要带{R:1},添加对应参数即可实现路径对应跳转,不会全部跳转到首页。
确认ZBlog的伪静态规则已经正确配置,同时已经执行过后台的重建全部数据操作,即可解决旧链接404问题。












易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图