URL 路径大小写和间距的最佳做法是什么?

What's the best practice for URL path casing and spacing?

我想知道什么是 URL 路径中大小写和间距的良好做法。

大小写:

间距:

../data/upload_data  
../data/upload-data  
../data/uploadData  
../Data/UploadData  

你怎么看?哪个更好?

三种常见的URL设计:

  • 最常见的设计是:全部小写,-作为分隔符。这是许多 CMS(包括最流行的 CMS,WordPress)中的默认设置,例如 Stack Overflow 也使用:你的问题 URL 的最后一个路径段是

    /whats-the-best-practice-for-url-path-casing-and-spacing
    
  • 维基百科(默认情况下,所有 MediaWiki 站点)使用 正确的大小写和 _ 作为分隔符 。例如,page about Stack Overflow 有最后一个路径段:

    /Stack_Overflow
    

    (which is different from /Stack_overflow)

  • 许多(早期)wiki 使用 CamelCase 并且没有分隔符。例如,第一个 wiki(使用 WikiWikiWeb)中的 page about Stack Overflow 在查询组件中有最后一段:

    Whosebug
    

亲分隔符:更容易看出字符串的含义;你可以避免误解(想想 teacherstalkingteachers talkingteacher stalking)。虽然 CamelCase 在这里可以提供帮助,但对于较长的字符串来说效果不佳,例如 whats-the-best-practice-for-url-path-casing-and-spacingWhatsTheBestPracticeForUrlPathCasingAndSpacing.

更容易理解

正确大小写: 如果您的站点有关于不同事物的页面,除了大小写不同之外写的相同(例如,"Stack Overflow" 代表 site/company, "Stack overflow" 用于编程概念;或 "Love" 用于名词,"love" 用于动词),这是消除歧义的简单方法。

Pro CamelCase: 这样写的单词可以自动链接到相应的页面;作者不必使用超链接标记。

除非您的站点是一个 wiki,其中有许多作者不太了解标记(在这种情况下,CamelCase 可能会有所帮助),或者像百科全书之类的东西,它定义了通常由一个或只有几个人描述的事物词(在这种情况下,正确的大小写可能会有帮助),我会采用最流行的方式:使用小写字母和连字符 (-) 作为分隔符。这是人们习惯看到的。

Google recommends this, too:

Consider using punctuation in your URLs. The URL http://www.example.com/green-dress.html is much more useful to us than http://www.example.com/greendress.html.

We recommend that you use hyphens (-) instead of underscores (_) in your URLs.