我有这种格式的网址:
http://www.example.com/manchester united
请注意曼彻斯特和曼联之间的空间,这是一种不好的做法,还是完全没问题,我只是想在继续之前,谢谢
答案 0 :(得分:2)
这是不好的做法,不仅因为浏览器需要将空间转换为%20,从而混淆了用户的地址栏,而且因为很难将网址传达给任何人。 那么,那些围绕堆栈溢出的所有“在文本中找到链接”的正则表达怎么办?你有效地打破了它们!
答案 1 :(得分:2)
它会在地址栏中被替换为http://www.example.com/manchester%20united,我个人认为它比替代http://www.example.com/manchester_united更加丑陋。
答案 2 :(得分:2)
空间不是URI中的有效字符;您 将其替换为%20
。它也可能被认为是不好的做法。用-
,+
或_
替换空格是最好的;它既“漂亮”又不需要转义URI。
大多数浏览器仍会尝试使用空格解析URI;但这很模糊。
答案 3 :(得分:0)
我相信很多浏览器都会将URL中的空格替换为%20符号。
答案 4 :(得分:0)
你需要添加%20而不是空格,但是浏览器会为你做,我宁愿在URI中没有任何空格
答案 5 :(得分:0)
从技术上讲,这将有效。浏览器将用%20
替换空格,服务器会将其翻译回来。
但是......这通常不是一个好主意,因为它可能导致歧义,或者难以将URL传递给其他人,特别是在广告环境中,您希望有人输入他们在其中看到的网址打印。
答案 6 :(得分:0)
也许有问题:https://webmasters.stackexchange.com/
但是...
如果您输入浏览器,则会在曼彻斯特和联合国之间添加%20。从技术上讲,您应该在HTML页面中执行此操作,但大多数现代浏览器都可以处理此问通常的做法是用连字符http://www.example.com/manchester-united将它们分开。
请查看此问题的网址,以获取此操作的示例。
答案 7 :(得分:-1)
可以做到这一点,但显然这是不好的风格。
请参阅以下内容:http://www.blooberry.com/indexdot/html/topics/urlencoding.htm