尾斜杠是放在URL末尾的正斜杠(“ /”),例如domain.com/或domain.com/page/。尾部斜杠通常用于区分具有尾部斜杠的目录和没有尾部斜杠的文件。但是,这些只是指导原则,而不是要求。
过去,文件夹将带有斜杠,而文件将不带有斜杠。文件夹将指示有更多文件,并且您通常会有一个索引文件(index.html,index.php等),将从中加载页面内容。因此,内容将来自domain.com/page/index.html,但domain.com/page/将显示给用户。对于单个文件,您将拥有文件名,并且末尾没有斜杠。
如今,大多数系统中的URL都不指向文件。该URL是存储在数据库中的记录。无服务器系统甚至不在您的服务器上托管文件。
不同的URL结构可能会有所不同。无论您是否选择使用斜杠,都是个人偏好,而不是什么。让我们看一些常见的场景。
域名后跟斜杠没关系
domain.com = domain.com/
这些网址的处理方式完全相同,使用哪个版本都没有关系。
尾部的斜杠对于其他URL很重要
domain.com/page ≠ domain.com/page/
对于除根域后紧跟的斜杠以外的所有情况,斜杠将被视为单独的URL。
文件不应以斜杠结尾
在大多数情况下,如果将斜杠添加到.html,.php,.js,.css,.pdf,.jpg等文件中,则不会加载该文件。这是因为大多数系统将假定该文件为文件夹,并且由于此路径之后没有任何内容,因此通常会返回404页面或者像下面这样的错误。
现在,让我们看一下对SEO的影响 。
斜线和 SEO
您可能要根据系统的工作方式做出不同的决定。这是您可能会遇到的一些常见情况。
尾随斜杠和非尾随斜杠URL上显示相同的内容
如前所述,如果您的内容在页面的尾部斜杠版本和非尾部斜杠版本中都可以看到,则可以将页面视为单独的URL。这里通常要担心的是,不同版本上的内容将导致重复内容。在大多数情况下,这不应该成为问题,因为规范标记可能会指定首选版本。即使没有这些信息,Google通常也会为您选择一个首选版本,以整合信号。您可以根据需要将URL强制为首选版本。
无论您决定是否使用斜杠,都希望确保所有不同的规范化信号(如重定向,站点地图,内部链接,规范标记等)都指向要索引的版本。
尾部斜杠和非尾部斜杠URL上显示不同的内容
在某些情况下,如果两个系统共享相同的文件夹结构或使用某些A / B测试软件,则可能会遇到以下情况:带有和不带有尾部斜杠的URL版本显示的内容完全不同。在这些情况下,理想情况下,您希望选择一个版本进行索引并显示给用户,然后将另一个版本重定向到该版本。
Hreflang
您可能会遇到涉及hreflang的更复杂设置的问题。Hreflang链接应指向页面的索引版本。如果规范标记指向带有尾部斜杠的页面版本,而Google以此方式索引页面,但是hreflang标记指向没有尾部斜杠的页面版本,则这些hreflang标记可能不受尊重。
添加或删除尾部斜杠
该过程将根据您的系统而改变。进行任何更改之前,最好检查相关文档。
.htaccess
删除斜杠:
RewriteCond%{REQUEST_FILENAME}!-d
RewriteRule ^(。*)/ $ / $ 1 [L,R = 301]
注意。!-d查找目录,如果存在,则不会删除斜杠。如果不包括此选项,则可能会破坏这些主目录页面。
添加斜线:
RewriteCond%{REQUEST_FILENAME}!-f
RewriteRule ^(。* [^ /])$ / $ 1 / [L,R = 301]
边注。!-f查找文件,如果该文件存在,则不添加斜杠。这样可以防止图像,PDF,JS,CSS等损坏。
WordPress的
如果你到 Settings > Permalinks,则可以更改是否使用自定义结构来使用斜杠。
/%postname%/
会将斜杠添加到URL
/%postname%
会从网址中删除斜杠
JavaScript框架
由于它们的路由器,这些系统可能与您习惯的有所不同。您可以自定义URL在路由器中的工作方式,或者-如果您不想在路由器上花费太多时间-这些系统中的大多数都有预先构建的模块来添加或删除尾部斜杠。
斜线对报告的影响
确定是否使用斜杠时应考虑报告。例如,在Google Search Console中,您可以设置域或URL前缀属性。如果您在设置URL前缀属性(例如域/文件夹)时不添加斜杠,那么Google还是会添加一个。结果,将不会报告对domain.com/folder的所有访问(不包含结尾的垃圾),因为domain.com/folder/(带有斜杠)的级别更高。
谷歌分析(GA)有试图通过文件夹做了深入分析的内容,如果你的主要页面没有斜线时,同样的问题。如果您的网址的斜线版本和无斜线版本均适用,则可能会在GA中报告两者 。
如果要合并数据,可以如下所示添加过滤器,以在分析报告中的URL上强制使用斜杠。
这是正则表达式: ^(/[a-z0–9/_-]*[^/])$
最后的想法
更改总是存在风险,因此,除非您的设置引起问题,否则我不会强求对您的URL进行更改。技术已发生变化,斜杠的旧URL约定不适用于大多数现代网站。