×

Web 工程师 SEO 技巧

Web 工程师必备的 38 项 SEO 技巧解析

元智汇电子 元智汇电子 发表于2023-11-18 17:09:43 浏览518 评论0

抢沙发发表评论

SEO,也就是“别人的义务”(Somebody Else’s Obligation),成为了工程师的一项必备技能。在这个领域,责任虽然可能会被推卸,但实际情况却是工程师需要更深入地了解 SEO 所扮演的角色。很多时候,问题的责任可能会被归咎于工程师身上,而这正是工程师们不愿意面对的痛苦。为了建立一种合作关系,工程师和其他团队成员之间需要共享信息,并在问题出现时保持公开和坦诚的沟通。

本文旨在强调一些重要但鲜为人知的 SEO 话题,这不仅对工程师社区而言是值得深入探讨的,也是与工程团队协作的各方值得共同探讨的。

服务器运维和停机处理策略

  • 在计划或非计划的停机情况下,推荐使用 HTTP 响应码“503 Service Unavailable”。相较于其他 5XX 响应码,它对搜索排名的影响较小。

  • 避免使用 HTTP 响应码 500、502 和 504,因为它们可能导致 Google 禁止或取消网页索引,从而导致潜在的有机访问损失。

  • 在出现问题时,迅速沟通并通知相关利益方。及时的信息共享有助于减少疑虑,同时也有助于团队更迅速地找到解决方案。

  • 为每个错误响应码(如 4XX 和 5XX 错误)创建自定义皮肤和跟踪事件。通过为问题提供更多细节,可以更轻松地进行故障诊断。

  • 在计算错误率时需谨慎,特别是对于复杂的网页,其加载可能调用服务器 150 次。这可能导致日志文件低估先前发生的错误响应码的频率。确保正确理解错误率的计算方式,避免误导性的统计数据。

  • 不要忽视看似“无法重现”的问题,这些问题可能是更深层次问题的征兆。及时关注和解决这些“诡异”的现象,以确保系统的稳定性和可靠性。


内容交付网络和缓存最佳实践

  • 缓存并不能取代对基本网站优化的需求。缓存的页面就像在约会网站上的照片一样,一开始人们只能看到这些照片。然而,在建立关系的过程中,用户和搜索引擎都需要了解“真实的你”。

  • 启用了 AMP 的页面并不能替代速度较慢的移动网站。确保网站在各方面都进行了综合优化,而不仅仅是依赖特定技术。

  • 注意控制页面大小,例如,Akamai 的文件大小限制为 1MB,超出时可能导致生成 500 响应码。

  • 将内部日志与 CDN 日志合并,以确保超过 90% 的问题都能够被及时检测到。协同管理内部和 CDN 的日志,以获得更全面的性能和问题反馈。

  • 在大型网站上,尤其是包含大量不经常修改的页面时,考虑使用“304-Not Modified”响应码,以减少不必要的资源传输。

  • 审查并识别不必要的动态查询,特别是那些用于填充很少更改的列表页面的查询逻辑。通过缓存查询和定期刷新缓存,可以有效避免对服务器造成不必要的压力。


重写规则和重定向策略

  • 在更改 URL 时,务必在启动时验证重定向,以最大程度地保留旧页面的信任和权益。对于URL的调整,避免在一开始就破坏它们,这类似于自取灭亡。逐渐进行变更,以确保谷歌逐渐认可和保留旧页面的价值。

  • 仔细检查重写标志或规则,确保它们不会导致重定向链的出现。在网站从HTTP迁移到HTTPS时,特别容易出现这种情况。某些URL可能在安全和非安全版本之间反复跳转,直到达到最终目标。这些额外的跳转可能损害原始URL的权益。


防范机器人攻击

  • 在确定有罪之前,宁可执行无罪之事。一些网站的超级用户可能因其“不自然”的浏览速度或安装了浏览器插件而被误认为是机器人。尽管这听起来像是个别案例,但在社区网站(如Quora)上,一个超级用户每月可能会吸引1万到1.2万的访问量。

  • 不要仅仅因为机器人来自特定地理位置而将其定义为恶意的。俄罗斯的机器人并不一定都是不良的,同样,美国的机器人也不一定都是良性的。许多恶意分子可能会在亚马逊的美国AWS服务器上部署机器人。对机器人活动的监测应该更加智能和全面,而不仅仅依赖于地理位置信息。

  • 如果需要取消或更改重定向,请务必清除CDN的缓存,以防止重定向循环的发生。及时处理缓存可以确保更改生效,避免因缓存问题而导致的不必要的重定向。


优化页面加载和延迟

  • 选择并坚持使用一个度量工具(如Rigor、Lighthouse或PageSpeed Insights),关注性能趋势而不仅仅是确切的数字。

  • 移动版页面加载速度对网站至关重要,即使你正在运行AMP版本的网站。谷歌通过原生移动体验评估网站,包括加载速度、用户体验和其他因素。

  • 将页面中每个跟踪像素和标签的所有权交给专业人士,并定期由利益相关者验证。如果不这样做,会有人要求在页面中添加更多垃圾,从而导致网站变慢,你的团队会受到指责。

  • 对于拥有数百万个页面的网站,服务器响应时间变得尤为重要。如果服务器响应速度慢,谷歌将不耐烦等待。

  • 如果使用NGINX作为大型网站的服务器,请确保即时Gzip压缩不会导致负面效果,即减慢服务器响应速度。

  • 消除任何影响页面渲染的因素,这可以立即改善一系列性能指标。即使是纯文本网站,在加载JS、CSS和字体时也可能遇到瓶颈。

  • 注意页面加载的前200毫秒和2秒期间发生的情况。一些页面可能不会立即"完全"加载,特别是当存在动态元素(如广告)时。


优化关键渲染路径

  • 首字节加载时间是关键指标,但同样重要的是了解首字节中包含的内容。浏览器在打开与服务器的新连接之前应能够构建首屏内容。

  • 定义页面元素的大小以避免页面混乱。用户可能会感到沮丧,即使加载速度很快,如果页面四处移动,用户仍然会感觉整个页面很慢。

  • 阅读Ilya Grigorik的文章(https://developers.google.com/web/fundamentals/performance/critical-rendering-path/measure-crp),即使是经验丰富的开发人员也能从中学到一些知识。


新技术和谷歌机器人的可访问性

  • 客户端渲染可能对SEO产生影响。尽管呈现给用户的是客户端渲染的页面,谷歌建议用户为其搜索爬虫提供服务器端渲染的页面。

  • 为谷歌机器人提供简单的分页,避免用户看到"无限滚动"的情况。

  • 避免使用"块级"链接,尽管这可能简化代码。将额外内容包含在<a>标签中会导致谷歌机器人难以将上下文的值传递到目标页面。


Staging和QA环境的最佳实践

  • 使用robots.txt文件来禁止搜索引擎爬取staging和QA环境的网站。

  • 在Google Search Console中注册staging和QA环境的网站。虽然这看起来可能有点违反直觉(因为你不希望搜索引擎找到这些资源),但如果测试网站被意外索引了,你可以在Search Console中取消索引。


产品需求管理

  • 指定一个人(最好是SEO团队成员,如果没有,产品经理也可以)来定义必须添加到页面中的所有内容,如<title>标签和其他元数据。这可能会显得有些繁琐,但如果构建的页面没有这些关键标签,他们会更加讨厌你。


内部链接战略

  • 链接是网站和整个网络的关键。确保任何重要的东西都可以在距离主页不超过五次点击的地方找到。因此,对于那些倾向于简化登录页面和导航链接的“极简主义者”,应该向他们提出一些问题。


域名注册和IP管理

  • 绝对不要让营销人员从托管网站的IP地址发送短信和促销电子邮件。违反CAN-SPAM法案的行为可能导致整个网站被列入黑名单。

  • 确保有人花时间填写年度联系信息更新问卷。如果忽略这一点,那么一些不良分子可能会更容易从技术上窃取你的域名。


▍JavaScript中的注意事项

  • 当页面开始渲染后突然变成纯白色时,通常是由于只提供了write()的起始标签而没有提供结束标签。

  • 谷歌会尝试遍历JavaScript内的相对路径,即使它们不存在,这可能导致爬虫错误报告的混乱。


处理JavaScript错误

  • 在发生错误时需要迅速采取行动,因为谷歌的算法可能会随时发生变化。就像建造一所房子可能需要几个月,但毁掉它只需要几分钟一样。因此,要迅速解决问题,就像熄灭火柴一样,并花时间向每个人传授有关消防安全的知识!


群贤毕至

访客