船说 CMS 网站 301 重定向怎么配置

juming
juming 正式会员超兽战士
发布于 2026-10-07 16:20 ·0 浏览 ·0 回复

学完这篇,你能在船说 CMS 里把旧链接正确地 301 跳转到新链接,并且用命令验证跳转是否真的生效、SEO 权重是否顺利传递。

先说清一件事:301 重定向分两个层面——服务器层面(Nginx/Apache 配置,最可靠)和 CMS 后台层面(改栏目目录名、文章别名)。换域名、整站改版必须动服务器配置;只是改某个栏目或某篇文章的路径,后台改别名 + 服务器一条规则就够了。

第一步:先判断你属于哪种场景

这一步要做什么:确认重定向的类型,做完你能确定该改哪里。

  • 换域名(old.com → new.com):走服务器整站 301,后台不用动。
  • 栏目改路径(/news/ → /zixun/):后台改栏目目录名,再补一条服务器规则把旧路径指过去。
  • 单篇文章换别名:后台改文章别名,服务器加一条 rewrite。
  • HTTP 跳 HTTPS:服务器加一段强制跳转。

注意:不要用 302。302 是临时跳转,搜索引擎不会把旧链接的权重给新链接,做迁移必须用 301。

第二步:在船说 CMS 后台改栏目目录名和文章别名

这一步要做什么:把栏目、文章的 URL 路径改成新地址,做完新链接本身就能正常访问。

登录后台(默认入口一般是 /admin.php 或 /admin/),左侧菜单进入「栏目管理」,找到目标栏目,点右侧「修改」,在「高级设置 / SEO 设置」区域找到英文目录名(有的版本显示为「别名」「目录」),把 news 改成 zixun,保存。

文章级别同理:进入「内容管理」→ 打开文章 → 「SEO 设置」里的「自定义 URL 别名」,填入新的英文别名后保存。

改完后到「系统设置」→「伪静态设置」页面,确认伪静态开关是开启状态,页面下方通常会给出 Nginx 和 Apache 两套规则,把属于你服务器的那套复制下来备用。

注意:改栏目目录名前先备份数据库。船说 CMS 部分版本会把栏目 ID 写进 URL,如果伪静态规则没同步更新,改完会出现整栏目 404。

第三步:在服务器上写 301 规则

这一步要做什么:让旧地址自动跳到新地址,做完访问旧链接会返回 301。

Nginx(改完执行 nginx -t 测试,再 nginx -s reload):


server {
    listen 80;
    server_name old.com www.old.com;
    return 301 https://www.new.com$request_uri;
}

# 单条路径跳转(放在站点的 server 块里)
rewrite ^/news/(.*)$ /zixun/$1 permanent;

Apache(改 .htaccess,确认 mod_rewrite 已启用):

RewriteEngine On
RewriteRule ^news/(.*)$ /zixun/$1 [R=301,L]

如果服务器配置改不了(虚拟主机常见),在船说 CMS 入口文件 index.php 最顶部加:

if (strpos($_SERVER['HTTP_HOST'], 'old.com') !== false) {
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: https://www.new.com' . $_SERVER['REQUEST_URI']);
    exit;
}

注意:permanent 才是 301,写成 redirect 是 302。另外跳转链不要超过一环,A→B→C 会丢失权重,直接 A→C。

第四步:验证 301 是否真的生效

这一步要做什么:用命令和浏览器双重确认,做完你能排除「看着跳了其实是 302」的坑。

终端执行:

curl -I https://www.old.com/news/123.html

看返回头里必须是 HTTP/1.1 301 Moved Permanently,并且 Location: 指向新地址。如果是 302 或 200,说明规则没生效或走了别的逻辑。

浏览器里按 F12 打开开发者工具,切到 Network 面板,勾选 Preserve log,访问旧链接,看第一条请求的状态码。

最后去百度搜索资源平台(ziyuan.baidu.com)→「普通收录」→「抓取诊断」,用旧链接测一次;有「站点改版」工具的话,提交改版规则,加速权重转移。

注意:旧域名解析不要马上停,至少保留 3 个月,否则 301 跳不过去,用户直接打不开。

小结

  • 301 是永久跳转,权重可传递;302 不行,迁移场景别用。
  • 后台改的是「新地址长什么样」,服务器配置负责「旧地址怎么跳过去」,两者要配套。
  • Nginx 用 return 301 / rewrite ... permanent,Apache 用 [R=301,L],都可先测 nginx -t 或看 .htaccess 语法。
  • 用 curl -I 验证状态码,别只看浏览器「好像跳了」。
  • 跳转链保持一环,旧域名解析保留至少 3 个月,同时把站内旧链接批量改掉,不要全靠 301 兜底。
版权声明:本文来自 GJ站长论坛《船说 CMS 网站 301 重定向怎么配置》
原文链接:https://www.gj0.com/thread-395.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~