假设我们有一个域
www.example.com
我们有一些针对不同国家的子域
au.example.com
us.example.com
uk.example.com
eu.example.com
这样做有什么缺点。我是从 SEO Google 的 Angular 以及您可能想到的任何其他方面讲的?
问题 我们有一个客户端 JS 重定向,可以根据用户的国家代码重定向用户。目前这是不可避免的,因为我们无法控制后端。
如果我们使用根域的唯一目的是重定向(例如通过 HTACCESS)到子域(我会将其托管在其他地方并更改 A 记录以反射(reflect)这一点),SEO 等的缺点是什么。
最佳答案
因此,在重定向位置方面,使用子域而不是子目录需要一些权衡。
搜索引擎优化
先关谷歌官方documentation声称它在几天后以相同的方式对待子域和子文件夹(它需要几天时间来学习如何抓取您的子域)。但是,设置子域而不是子文件夹可能需要更多设置。最终,最大的赢家将是您最容易维护和更新的那个,因为这将使您能够以其他方式优化 SEO。
安全
子域和子文件夹之间的另一个考虑因素是安全性。浏览器将子域视为单独的来源,这意味着 same origin policy会给我们一些额外的安全好处。具体来说,这意味着默认情况下,一个来源的内容无法读取另一个来源的内容,必须明确授予该批准。因此,如果您跨不同来源托管多个服务,并且其中一个存在 Web 漏洞,攻击者将很难从该域跳转到另一个域。因此,您可以为包含最敏感数据的域确定安全工作的优先级。
有了子文件夹,如果一个页面存在 Web 漏洞,攻击者也可以轻松地转向攻击其他页面。在此模型中,您网站的安全性与最薄弱的页面一样好,而不是每个页面(子域)都有自己独立的安全模型。
子域与子文件夹的结论
根据您的示例,这些网站看起来可能具有相似的内容,但本地化略有不同。如果是这种情况,并且您的网站很简单(提供静态内容或没有任何特别敏感的组件),我建议使用子文件夹,因为它可能更容易设置。
如果您有复杂的组件(或者您将来可能有)或者每个站点都非常不同,我建议使用子域来提高安全性。如果您不确定将来是否要拥有复杂/敏感的组件,我也建议您使用子域,因为它会在谨慎方面出错。
一般重定向的结论
重定向通常不会对 SEO 产生影响,因为搜索引擎可以使用它来索引您的子域。但是,我会在执行重定向的页面上包含一个链接,只是为了让搜索引擎更明确地了解重定向的目标并帮助他们编制索引。
关于javascript - 将根域重定向到子域的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55095975/