帝国 CMS 批量修改内容页文件命名与 URL 改版、Nginx‑301 权重迁移完整教程
时间:2026-08-12 09:43:07 来源:aliz.cn 作者:SKY 阅读:
前言
网站 URL 结构对于搜索引擎优化至关重要,过长的时间戳、日期文件夹、多余前缀都会拉长静态链接。 不少站长一开始建站选用「时间‑ID」「年月日 + ID」格式生成 html,运营一段时间之后才发现短 ID 地址更加利于爬虫抓取。
帝国 CMS 原生栏目设置仅管控新建文章,历史旧文章的存储路径、文件名保存在数据表当中。 所以仅仅后台修改栏目参数,并不能够改造存量文章,也是大部分站长踩坑的地方。下面由浅入深讲解完整改造流程。
一、先认清帝国 CMS 六种内容页命名规则
进入后台‑栏目管理‑修改栏目,内容页文件命名形式一共有 6 种原生模式:
- 0 = 仅信息 ID,例:
68.html(SEO 首选,链接最短) - 1 = 时间戳 + ID,例:
1782561342‑68.html - 2 = 公共 ID
- 3 = MD5 加密文件名
- 4 = 年月日 + ID,例:
2026081268.html - 自定义前缀,可设置 article‑68.html、news‑68.html
重点提醒:修改该选项之后,只针对之后新增文章生效,之前已经创建好的资讯不受任何改动。
二、批量修改全部栏目命名配置
这里提供后台可视化操作、SQL 命令两种方式,栏目数量少时用后台,上百个栏目推荐 SQL 一键执行。
方法 1:后台批量管理栏目
- 登录帝国 CMS 后台,打开【栏目管理】→【批量管理栏目】
- 勾选所有需要改造的栏目
- 底部批量操作选择「修改栏目属性」
- 往下滑动找到「内容页文件命名形式」
- 选定纯 ID 或者你需要的格式,自定义文件前缀留空
- 提交保存
方法 2:SQL 语句一键批量修改栏目数据表
数据表名称:
phome_enewsclass
- filename:文件命名规则编号
- filename_qz:文件名自定义前缀
执行数据库查询工具,SQL 示例
sql
-- 设置全部栏目采用纯ID命名,清空前缀
UPDATE phome_enewsclass SET filename='0',filename_qz='';
如果需要自定义前缀,例如
art‑id.htmlsql
UPDATE phome_enewsclass SET filename='0',filename_qz='art-';
三、关闭日期文件夹(按需操作)
早期开启按照日期分目录存储静态文件,地址一般类似
news/20260812/68.html。 想要取消日期子文件夹,直接存放至栏目目录,需要清空对应模型数据表当中的newspath字段。常用资讯模型数据表为
phome_ecms_newssql
UPDATE phome_ecms_news SET newspath = '';
如果你建有多个自定义模型,对应修改每一张内容数据表。
四、刷新资讯地址(最关键一步)
栏目配置已经更新、日期目录关闭之后,旧文章数据库存储的文件名还是旧格式。
- 后台点开【系统设置】‑【数据更新中心】
- 依次执行下面三项更新顺序
- 更新栏目缓存
- 更新信息页地址
- 刷新全部内容页静态页面
执行完成之后,系统会依照栏目全新命名规则,重新计算每一篇文章的访问路径、html 文件名并且生成全新静态文件。
五、URL 改版完整安全操作顺序
URL 改动属于网站重大调整,操作顺序出错极易大批量出现 404 错误,严格按照下面流程:
- 完整备份数据库;备份网站 static/html 静态文件夹
- 后台或者 SQL 批量修改栏目文件命名规则
- 执行 SQL 清空 newspath 日期存储路径(不需要日期文件夹才运行)
- 进入数据更新中心,更新栏目缓存、更新信息页地址
- 批量重新生成全部内容静态页面
- 配置 Nginx301 永久重定向,旧网址跳转全新链接
- 旧的老式静态 html 文件先保留 14‑30 天
- 更新网站 sitemap 地图并且提交搜索引擎
六、Nginx 配置旧链接 301 永久重定向
permanent 代表 301 永久跳转,可以传递页面权重,下面整理日常最常见的几种场景规则,直接放入站点 server 配置块。
场景 1:时间戳‑ID.html → 纯 ID.html
旧:
1783213126‑126.html 新:126.htmlnginx
rewrite ^(.*)/[\d]+-(\d+)\.html$ $1/$2.html permanent;
场景 2:年月日拼接 ID 改为纯 ID
旧:
20260812126.htmlnginx
rewrite ^(.*)/20\d{6}(\d+)\.html$ $1/$2.html permanent;
场景 3:取消日期文件夹
旧地址
news/20260812/126.htmlnginx
rewrite ^/news/20\d{6}/(\d+)\.html$ /news/$1.html permanent;
多个栏目目录就复制多条,修改目录名称。
场景 4:去除文件名前缀
旧
news‑126.html → 126.htmlnginx
rewrite ^(.*)/news-(\d+)\.html$ $1/$2.html permanent;
aliz.cn完整 server 参考配置
nginx
server
{
listen 80;
listen 443 ssl http2;
server_name www.aliz.cn aliz.cn;
# HTTP强制跳转HTTPS
if ($scheme != "https"){
return 301 https://$host$request_uri;
}
# URL改写规则,放置在伪静态前面
rewrite ^(.*)/[\d]+-(\d+)\.html$ $1/$2.html permanent;
rewrite ^(.*)/20\d{6}/(\d+)\.html$ $1/$2.html permanent;
root /www/wwwroot/aliz.cn;
index index.html index.php;
#帝国CMS伪静态规则
location ~ ^/([a-z0-9]+)/(\d+)\.html$ {
try_files $uri /e/action/ShowInfo.php?classid=$1&id=$2;
}
}
配置之后校验语法、重载 Nginx
bash
nginx -t
nginx -s reload
七、Apache 环境 .htaccess 跳转备用代码
apache
RewriteEngine On
RewriteRule ^(.*)/[0-9]+-([0-9]+)\.html$ $1/$2.html [R=301,L]
八、常见故障排查
故障 1:修改设置,旧文章文件名毫无变化
根源:栏目参数只管控新文章;存量资讯路径保存在内容数据表。 解决:必须执行「更新信息页地址」并且重新生成静态页面。
故障 2、刷新地址之后访问页面 404
- 检查对应模型数据表 newspath、filename 字段已经更新
- 确认已经重新生成静态 html 文件
- 清除浏览器缓存、CDN 缓存
故障 3:静态文件依旧保存在日期文件夹
newspath 字段没有清空,执行对应数据表 SQL 重置路径,之后再次更新信息地址。
九、URL 改版 SEO 防护要点
- 旧静态文件不要立刻删除,最少保留两周,等候搜索引擎爬虫适应新链接;
- 必须配置 301 永久跳转,不要使用 302 临时跳转,防止权重无法继承;
- 制作全新 XML 站点地图,提交至搜索引擎站长平台;
- 百度搜索资源平台提交网站改版工具,上报旧‑新 URL 对应规则;
- 之后外链、友情链接慢慢替换成新版短 ID 链接。
十、进阶:自定义个性化文件命名规则
原生的六种命名格式无法满足拼音标题、英文别名等需求,可以修改生成文件名底层函数:
e/class/functions.php,搜索 ReturnInfoFileName,在此处自定义 PHP 逻辑,定制专属的文章命名方式。
结语
修改帝国 CMS 内容页命名并不是单纯改动后台选项,本质是数据表路径字段刷新、静态文件重建、旧地址权重迁移的整套工程。 只要严格遵守备份、更新地址、生成静态、301 跳转、等待爬虫更新这套流程,就能够安全完成 URL 结构优化,缩短链接长度,提升网站 SEO 表现。
本文配套模板、静态源码可前往艾立兹素材库alisucai.com下载
发表评论
共有0条评论