尾部斜线:是或否? [复制]

Posted

技术标签:

【中文标题】尾部斜线:是或否? [复制]【英文标题】:Trailing slashes: yes or no? [duplicate] 【发布时间】:2011-03-04 20:41:35 【问题描述】:

我正在开发一个新项目,使用 Apache 的 mod_rewrite 和 php 来获取漂亮的 URL。

我的网址如下所示:http://example.tld/foo/bar/1/etc

请注意,没有尾部斜杠(这是我在<a>s 的href 属性中写它的方式)。

但是,我也允许 http://example.tld/foo/bar/1/etc/(斜杠)。

这是不好的做法吗?我想知道是否最好只允许一种方式,或者我最好在所有链接中使用斜杠,默认情况下。

谢谢。

【问题讨论】:

【参考方案1】:

尾部斜杠通常表示目录,没有尾部斜杠则表示文件。

同时允许带有和不带有斜杠都会对您的搜索引擎排名产生负面影响,因为相同的内容会被索引两次。坚持一个,如果用户请求另一个,则执行 301 重定向。

【讨论】:

这就是我害怕的。例如,我刚刚意识到 Stack Overflow 允许尾部斜杠和不尾部斜杠。我想我不会使用斜杠。没有浏览器会尝试强制使用斜杠,对吧?【参考方案2】:

为了保持一致性,我想说的是只允许你自己使用什么,然后让它重定向 (301) 错误的(带尾随的)到正确的(不带尾随的),这样你就不会有 duplicate content要么。

当然,对与错完全取决于你。

【讨论】:

【参考方案3】:

在文档中使用相对链接时,尾部斜杠可能会成为问题,因为浏览器会将/etc 视为目录。

我会定义一种方式,并为另一种方式设置外部重定向。

【讨论】:

漂亮网址中的相对链接?现在有一个令人头疼的邀请。 @Kristoffer true :) 但我已经看到它完成了......

以上是关于尾部斜线:是或否? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

sh 问是或否

C++ 抽象类:构造函数是或否?

如何将计数器设置为是或否无线电,提交时递增?

MVC 模型布尔显示是或否

是或否:MVC 中的模型是不是应该包含应用程序逻辑?

如果嵌套查询在 SQL Server 中是不是有结果,如何返回是或否?