船说 CMSrobots 文件在哪里编辑

juming
juming 初级会员超兽战士
发布于 2026-10-08 02:48 ·1 浏览 ·0 回复

读完这篇,你能自己找到并改掉船说 CMS 的 robots.txt,让搜索引擎按你的意思抓取网站。

第一步:先确认 robots.txt 是真实文件还是被程序动态接管

这一步要搞清楚「文件到底存不存在」,否则你会在目录里翻半天却发现根本没有这个文件。

打开浏览器,访问 你的域名/robots.txt,比如 https://www.example.com/robots.txt,看三种结果:

  1. 显示一段纯文本规则(类似 User-agent: *)——说明文件存在,或者程序动态输出了。
  2. 显示 404、找不到页面——说明没有实体文件,需要你自己建。
  3. 显示的是网站首页或某个模板页面——说明伪静态规则把请求接管了,属于最难处理的一种。

要区分第 1 种里的「实体文件」还是「动态输出」,直接用服务器命令找:

find /www/wwwroot -iname "robots*" 2>/dev/null

有输出,就是实体文件;没输出但访问又能看到内容,就是程序动态生成。

注意:船说 CMS 不同版本、不同二次开发的站点目录结构差异较大,网上抄来的路径不一定对得上,一律以上面这条 find 命令的结果为准。

第二步:用宝塔面板或 FTP 定位并打开文件

这一步要拿到文件的完整路径,并把内容读出来。

如果你用宝塔面板(以 7.x/8.x 为例):

  1. 登录宝塔面板,左侧点「文件」。
  2. 在路径栏输入 /www/wwwroot,回车。
  3. 找到你站点对应的目录(通常以域名命名),点进去。
  4. 目录里如果没有 robots.txt,点上方工具栏的「搜索」图标,输入 robots.txt 勾选「包含子目录」再搜。

如果是从命 令行确认到的路径,直接照着路径一层层点进去就行。找到后双击 robots.txt,用面板自带的编辑器打开即可。

注意:宝塔的编辑器默认可能按 GBK 打开中文乱码,右下角编码切换成 UTF-8。robots.txt 本身只允许 ASCII 字符,别写中文注释,否则部分搜索引擎会解析失败。

第三步:文件不存在时,自己新建一个

这一步的产出是一个能被正常访问的 robots.txt。

在站点根目录(就是和 index.php 同级的那一层)新建文件:

  • 文件名:robots.txt(全小写,不要写成 Robots.txt 或 robots.txt.txt)
  • 编码:UTF-8,无 BOM
  • 权限:644

内容先写一份通用版:

User-agent: *
Disallow: /admin/
Disallow: /api/
Disallow: /*?page=
Allow: /
Sitemap: https://你的域名/sitemap.xml

保存后回到浏览器,强制刷新(Ctrl+F5)访问 你的域名/robots.txt 验证。Linux 服务器上还要确认文件属主是运行 PHP 的用户,一般宝塔里选 www 即可,否则可能出现 403。

注意:Windows 系统下用记事本保存容易带上 BOM 头,导致首行变成乱码。建议直接在宝塔面板里新建,或用 Notepad++ 另存为 UTF-8 无 BOM。

第四步:访问 robots.txt 显示成网页时的处理办法

这一步解决「被伪静态接管」的情况,也是船说 CMS 最容易卡住的地方。

现象是访问 域名/robots.txt 返回的是首页 HTML 或 404 模板页。原因通常是 Nginx 或 Apache 把所有不存在的路径都转发给了 index.php。处理顺序:

  1. 先看站点根目录的 .htaccess(Apache)或宝塔「网站 → 设置 → 配置文件」(Nginx),找 try_files 或 RewriteRule 规则。
  2. 在 Nginx 的 server{} 里加一条优先匹配:
location = /robots.txt {
    root /www/wwwroot/你的站点目录;
    try_files /robots.txt =404;
}
  1. 保存后点「重载配置」,再到浏览器验证。

如果你的船说 CMS 后台里有「SEO 设置」「网站设置 → robots 规则」这类入口(部分版本提供),也可以直接在那里填写规则并保存,程序会把它写入文件或动态输出。用后台改过之后,务必回第一步重新执行一次 find 命令确认文件位置有没有变化。

注意:后台改了 robots 规则、又手动改了实体文件,两边内容不一致时,通常以后台生成的为准。别同时维护两份。

第五步:清理缓存,让改动真正生效

这一步确保搜索引擎和新访客拿到的都是新内容。

依次做三件事:

  1. 船说 CMS 后台找到「系统 → 更新缓存」或「清除缓存」执行一次。
  2. 如果你装了 CDN 或用了宝塔的 Nginx 缓存,在 CDN 控制台提交 https://你的域名/robots.txt 的刷新。
  3. 用带参数的地址验证是否绕过缓存:https://你的域名/robots.txt?v=1。

最后到百度搜索资源平台、Google Search Console 里重新抓取一次 robots.txt,确认线上生效。

注意:robots.txt 被屏蔽掉重要目录后,已收录的页面不会马上消失,但新内容会停止抓取。改之前先把原文件内容复制一份备份,出问题能秒回滚。

小结

  • robots.txt 的位置不固定,先用 find /www/wwwroot -iname "robots*" 定位,再谈编辑。
  • 文件不存在就在站点根目录新建,文件名全小写、UTF-8 无 BOM、权限 644。
  • 访问后显示成网页而不是纯文本,说明被伪静态接管,要在 Nginx/Apache 配置里加优先匹配规则。
  • 后台 SEO 设置和实体文件不要双份维护,改完清一次缓存。
  • 动手前先备份原文件。
版权声明:本文来自 GJ站长论坛《船说 CMSrobots 文件在哪里编辑》
原文链接:https://www.gj0.com/thread-702.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~