闲鱼买的网站模板装上后白屏怎么办?项目源码3个排查步骤定位PHP Fatal Error
# 闲鱼买的网站模板装上后白屏怎么办?项目源码3个排查步骤定位PHP Fatal Error > 参考来源:[PHP 官方手册 - 错误处理](https://www.php.net/manual/...
阅读全文 →参考来源:Google Search Central 网站迁移指南、W3C RFC 9110 重定向规范、百度搜索资源平台文档。本文实操流程均经过真实项目验证。
TL;DR:网站搬家后收录掉了,90%的原因是301跳转没做对。换服务器、换域名、换CMS,只要旧URL没正确指向新URL,百度和Google就会把整个站当成新站重新评估,历史权重一夜归零。下面这3个301跳转实操,是我自己帮客户从Discuz搬家到WordPress时反复验证过的方案,按顺序做完,7-30天内收录基本能恢复。
去年帮一个老站长把Discuz论坛从老域名迁到新域名,搬家第三天site:查收录直接掉了80%。当时我也慌,但后来梳理了一下,网站搬家后收录掉了,无非就这3个原因:
| 原因 | 表现 | 解决思路 |
|---|---|---|
| 旧URL没做301 | 百度/Google还抓老URL,但老URL返回404 | 立刻配置301跳转到对应新URL |
| 改版动了URL结构 | 新旧URL路径完全不一样,301也对应不上 | 做 URL映射表,逐条对应 |
| 死链没清理 | 旧站死链被搜索引擎反复抓 | 提交死链清单到搜索资源平台 |
淘宝找的网站外包做出来跟设计稿不一样怎么办?3个仿站还原度验收硬指标避开翻车里讲到仿站还原度,跟搬家保收录逻辑是相通的——核心都是让搜索引擎和用户都能"无感切换"。一旦跳转链断了,权重就传递不过去。
这是最关键的一步,也是最容易出错的一步。301跳转的写法要看你的服务器类型:
Nginx 写法(最常见):
server {
listen 80;
server_name old-domain.com;
return 301 https://new-domain.com$request_uri;
}
Apache(.htaccess):
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old-domain\.com$ [NC]
RewriteRule ^(.*)$ https://new-domain.com/$1 [R=301,L]
注意 $request_uri 和 $1 是关键,它把旧URL的完整路径带到新URL上。如果只写 return 301 https://new-domain.com/;(不带路径),所有页面都会跳到首页,百度和Google会把这当成"软404",直接降权。
Discuz论坛模板装上后首页错位怎么办?项目源码3个排查步骤这种Discuz场景尤其要注意,Discuz的 forum.php?mod=viewthread&tid=123 这种带参数URL,跳转规则要写成 if ($query_string) 单独处理,否则参数会被吃掉。
WordPress搬家场景更复杂一些,因为WordPress的固定链接格式可以自定义。常见的 /2026/06/post-name/ 改成 /blog/post-name/ 后,需要把旧的日期格式URL逐条301到新格式。如果你用的是淘宝WordPress外包做出来跟设计稿不一样怎么办?像素级仿站3个验收硬指标里这类淘宝外包团队交付的WordPress站,建议在搬家前让他们直接交付一份 nginx.conf 的301规则文件,避免上线后再手工补。
Discuz和WordPress的另一个差异在于伪静态规则:Discuz需要在后台开启伪静态、把动态URL forum.php?mod=forumdisplay&fid=2 重写成 forum-2-1.html;WordPress自带固定链接重写。如果你同时从Discuz迁到WordPress,301规则里要把Discuz的伪静态格式也覆盖到,否则旧论坛帖子的权重就传不过来。
如果你不只换了域名,连URL结构都改了(比如从 /article.php?id=123 改成 /blog/post-123.html),通配的301就不行了,必须做URL映射表。
操作步骤:
location = /article.php?id=123 {
return 301 https://new-domain.com/blog/post-123.html;
}
location = /article.php?id=124 {
return 301 https://new-domain.com/blog/post-124.html;
}
URL映射表做得越完整,权重传递越彻底。一般200个页面的站,做完映射表大约需要2-3小时,但能保住90%以上的历史排名。这个时间投入是值得的。
301做完不等于完事,还要主动告诉搜索引擎"我搬家了"。这一步分两个动作:
1. 提交死链清单:
在百度站长平台的"死链提交"里上传一个 dead-links.txt,每行一个已经不存在、也不需要跳转的旧URL。Google那边在Search Console的"移除"工具里提交。
2. 主动推送新URL:
百度有API推送和sitemap推送两种方式。新URL上线后立刻通过API推一遍:
curl -H 'Content-Type:text/plain' --data-binary @urls.txt \
"http://data.zz.baidu.com/urls?site=new-domain.com&token=YOUR_TOKEN"
Google那边直接提交sitemap.xml到Search Console即可,Google重新抓取的速度比百度快,通常3-7天就能看到收录回升。
如果想了解建站交付层面如何避免后期出现这种迁移问题,可以参考外包建站交付质量怎么看?仿站还原度、后台系统验收与爬虫稳定性的真实验收标准,里面提到的爬虫稳定性其实就是搬家后能否被正常抓取的硬指标。
不同情况下收录恢复时间差别很大:
| 场景 | 恢复周期 | 关键变量 |
|---|---|---|
| 只换服务器,域名+URL不变 | 1-3天 | DNS生效时间 |
| 换域名,URL结构不变 | 7-15天 | 301规则准确性 |
| 换CMS,URL结构大改 | 15-30天 | URL映射完整度 |
| 同时换域名+CMS+URL | 30-60天 | 需要逐个环节排查 |
如果你已经搬家1个月,site:还是只有几条,最可能的原因是301规则里漏了某种URL pattern。建议用Screaming Frog这类爬虫工具,把旧URL全爬一遍,看返回的状态码是不是全部301(而不是404或200)。
更多建站交付阶段的细节,网站外包项目交付后源码怎么验收?2026年代码审计到线上部署的6项硬性检查里讲的6项硬性检查也覆盖了Nginx配置和URL规则,搬家前最好让外包团队一并交付。
搬家后的维护同样关键。新建站初期1-2个月内,建议每天看一次Search Console的抓取错误和收录曲线,发现异常立刻排查。具体运维节奏可以参考技术外包建站后网站维护怎么做?2026年从服务器续费到内容更新的运维指南,从服务器续费到内容更新都覆盖了。
如果你正在评估要不要做这种大规模迁移,AI时代全栈外包建站怎么选?2026年中小企业从仿站到定制开发的真实成本对比里提到的成本测算逻辑也值得参考——把"SEO恢复周期"算进迁移成本,往往比想象中贵得多。
除了上面3个核心实操,搬家过程中还有5个常见踩坑点:
DNS切换没做平滑过渡:直接把DNS从老服务器切到新服务器,可能导致部分地区访问不到。正确做法是先在新服务器部署好、把DNS TTL调到5分钟、再切换,并保留老服务器7-14天。
HTTPS证书未生效就上线:新域名或新服务器上HTTPS证书没装好,搜索引擎抓到的全是SSL错误页面,直接判定整站不可访问。
robots.txt写错:新站上线时robots.txt里禁止了爬虫,结果搜索引擎抓不到任何页面,相当于自我封禁。
sitemap.xml没更新:sitemap还是老域名的URL,搜索引擎抓sitemap后跳到老站,新站迟迟不被收录。
CDN缓存污染:搬家前Cloudflare或CDN把老站HTML缓存了,搬家后用户访问的还是老HTML,301跳转不生效。
这5个坑里,第3和第4个最容易被忽略。建议搬家前用 curl -I https://new-domain.com/robots.txt 确认返回内容正确,再用 curl https://new-domain.com/sitemap.xml 验证sitemap指向新URL。
问:网站搬家后收录掉了,多久能恢复?
如果301跳转配置正确,只换服务器一般1-3天恢复;换域名7-15天;换CMS加URL结构大改需要15-30天。如果超过60天还没恢复,大概率是301规则有遗漏,需要用爬虫工具逐URL排查。Discuz和WordPress这类系统切换通常属于第三种情况。
问:301和302跳转有什么区别?
301是永久跳转,会把旧URL的权重传递给新URL;302是临时跳转,权重不传递。网站搬家必须用301,302会让搜索引擎认为旧URL还会回来,新URL一直不被收录。百度对302比Google更敏感,302跳转百度可能直接降权。
问:百度收录掉了,Google没掉是为什么?
Google重新抓取和权重传递的速度比百度快。同样的301规则,Google通常3-7天就完成权重迁移,百度需要15天以上。如果只针对百度收录掉了,重点检查百度站长平台是否有抓取异常报错,以及百度是否对Discuz这类老站结构有特殊判定。
问:网站搬家后收录掉了,能找外包团队修复吗?
可以。需要找懂SEO和服务器配置的全栈团队,像5acxy这类提供从仿站、搬家到SEO恢复的一站式服务的平台,建议在搬家前就让团队给出迁移方案和301规则,避免搬家后再补救。
网站搬家后收录掉了这件事,越早处理越好。301跳转的正确写法、URL映射表的完整度、死链清单的提交,这三件事任何一件没做对,都会拖慢收录恢复速度。
如果你正在筹备网站搬家,建议先备份旧站所有URL、提前写好301规则、上线后立刻推送新URL到百度和Google。一次到位,比反复修补要省心得多。
# 闲鱼买的网站模板装上后白屏怎么办?项目源码3个排查步骤定位PHP Fatal Error > 参考来源:[PHP 官方手册 - 错误处理](https://www.php.net/manual/...
阅读全文 →
# 千牛客服消息回不过来怎么办?3个免费在线客服系统替代千牛自动回复的真实玩法 > 参考来源:[Zendesk 客户体验趋势报告](https://www.zendesk.com/blog/zend...
阅读全文 →