应该是/ about_us还是/ about-us?
从可用性的角度来看,我个人认为/ about-us对最终用户来说要好得多,但Google和大多数其他网站(和javascript框架)都使用下划线命名模式.这只是风格问题吗?破折号是否存在兼容性问题?
来自Google Webmaster Central
请考虑在您的网址中使用标点符号.网址 http://www.example.com/green-dress.html 对我们来说比http://www.example.com/greendress.html更有用 .我们建议您在网址中使用连字符( - )而不是下划线(_).
以下是支持破折号的几点:
Google推荐使用破折号(来源).
最终用户更熟悉破折号.
在标准键盘上更容易编写破折号(无需Shift).
破折号不会隐藏在下划线后面.
Dashes在URL的上下文中感觉更原生,因为它们在域名中是允许的.
它不仅仅是短划线与下划线:
带空格的文字
textwithoutspaces
编码%20spaces%20英寸%20URL
underscore_means_space
划线装置空间
加+指+空间
骆驼香烟盒
PascalCase
"引用带空格的文字" (单引号与双引号)
斜线/装置/空间
dot.means.space
谷歌过去并没有将下划线视为一个单词分隔符,我认为这很疯狂,但显然现在确实如此.由于这段历史,破折号是首选.尽管从SEO的角度来看现在允许下划线,但我仍然认为短划线是最好的.
一个好处是,你的普通半计算机 - 文盲网络冲浪者更有可能在键盘上输入短划线,他们甚至可能不知道下划线是什么.
这只是猜测,但似乎他们选择了人们最不可能在名称中使用的那个.这样,您可以使用包含带连字符的单词的名称,并仍使用下划线作为单词分隔符,例如,UseTwo-wayLinks可以转换为use_two-way_links.
在您的示例中,/ about-us将是一个名为带连字符的单词"about-us"的目录(如果存在这样的单词,/ about_us将是一个名为双字短语"about us"的目录,转换为单个字符串非白色字符.
我曾经一直使用下划线,现在我只将它们用于我不希望任何人直接链接的网站部分,js文件,css,...等.
从SEO的角度来看,破折号似乎是处理它的首选方式,详细解释来自马口http://www.mattcutts.com/blog/dashes-vs-underscores/.
与公共程序员相比,似乎发生的另一个问题是,当带有下划线的超链接带有下划线时,您无法看到下划线.高级用户将会解决这个问题,但Joe Public可能不会.
仍然在代码中使用下划线而不是破折号 - 程序员理解它们,而大多数其他人则不然.
杰夫对此有一些想法:https://blog.codinghorror.com/of-spaces-underscores-and-dashes/
两者都有缺点.我建议你选一个并保持一致.
搜索引擎优化大师Jim Westergren在2005年从严格的SEO角度对此进行了测试,并得出结论+(加号)实际上是最好的单词分隔符.但是,这似乎并不合理,可能是由于搜索引擎算法中存在错误.他建议 - (破折号)兼容可读性和SEO.
我更喜欢下划线.首先,它们与我的常规编程经验相匹配variable_names_are_not-subtraction
,其次,我相信这已被提及,单词可以有连字符,但它们没有下划线.选择一个非常愚蠢的例子,"民族国家"与"民族国家"不同.前者翻译的是"民族国家的土地"(想想"这里是枪支的国家!最好的移动,是的,你好吗?"),而后者看起来像是一些有时同义词的列表.http://example.com/nation-state-country/
似乎并不意味着相同http://example.com/nation-state_country/
,但是,如果连字符是分隔符/"空格"以及单词中的字符,它可以.对于实际目的,后者似乎更清楚,而前者看起来更像是那个列表,如果有的话.