大家好,我是Funion数字营销实战派飞小优,最近有个道友的网站遇到问题,当看到服务器后发现神马蜘蛛是不要命的抓取不存在的页面,如题,那如何解决?

先说蜘蛛抓取不存在的URL危害
从访问来看,YisouSpider
抓取后的状态码为301
,所以这就造成站点资源被耗尽的罪魁祸首,最直接危害2个:
- 网站访问不了,用户体验不好;
- SEO直接受到影响,收录降低,最后影响排名。

解决方案思路
- 修改Nginx配置文件,重新优化重定向;
- 增加Robots协议,屏蔽蜘蛛抓取频次,减少对指定目录及文件访问;
实施步骤
检查文件是否存在
登录服务器,检查这些文件是否确实存在。在服务器或者终端执行命令例如:
ls -l /www/wwwroot/youdomain.com/static/assets/icon/css/icon.css
ls -l /www/wwwroot/youdomain.com/static/seven/css/style.css
如果文件不存在,需要检查前端项目的源代码,确认这些文件是否被遗漏或未正确部署。
检查前端代码
查看前端 HTML 或 JavaScript 代码,确认这些文件的引用路径是否正确。例如:
- 是否使用了正确的相对路径或绝对路径。
- 路径是否有拼写错误。
检查 Nginx 配置
确认 Nginx 是否配置了正确的静态资源路径。例如:
<NGINX>server {
listen 80;
listen 443 ssl http2;
server_name youdomain.com www.youdomain.com;
root /www/wwwroot/youdomain.com;
location /static/ {
alias /www/wwwroot/youdomain.com/static/;
access_log off;
expires 30d;
}
}
确保 location /static/
块正确指向了静态资源目录。
检查文件权限
确认这些文件的权限是否正确,确保 Web 服务器用户(如 www
或 nginx
)有读取权限。例如:
chmod -R 755 /www/wwwroot/xxx.com/static
chown -R www:www /www/wwwroot/xxx.com/static
清除缓存
如果怀疑是缓存问题:
- 清除浏览器缓存(或使用隐身模式测试)。
- 如果使用了 CDN,清除 CDN 缓存。
- 如果使用了反向代理(如 Nginx),确保没有缓存错误响应。
查看日志
检查 Nginx 或 Web 服务器的日志,确认这些请求的详细信息。例如:
tail -f /www/wwwlogs/xxx.com.log
查找与这些丢失文件相关的请求记录。
监控和测试
部署修复后,持续监控日志,确保问题不再出现。使用以下工具测试:
- Lighthouse:检查前端性能与资源加载。
- curl:手动测试静态资源请求。

top执行命令:curl -I https://xxx.com/static/assets/icon/css/icon.css
当返回为如下就可以了:
HTTP/2 410
Server: nginx
Date: [当前日期]
Content-Type: text/html
Content-Length: [长度]
Connection: keep-alive
除此之外还需要在robots.txt中进行新的屏蔽规则添加,比如禁止神马爬虫抓取,可以更新下robots规则:
User-agent: YisouSpider
Disallow: /static/assets/
Disallow: /static/seven/
Disallow: /static/qnassets/

写在最后
以上就是关于YisouSpider疯狂爬取不存在的URL与地址导致服务器资源CPU100%跑满耗尽解决方案,在操作之前一定要记得备份好数据,如果有其他需要协助或者有建站/SEO外包的地方,请随时告诉我或者在下方留言!