为啥浏览器 URL 不能以 .com 结尾?
Posted
技术标签:
【中文标题】为啥浏览器 URL 不能以 .com 结尾?【英文标题】:Why browser URL cannot end with .com?为什么浏览器 URL 不能以 .com 结尾? 【发布时间】:2014-12-27 03:39:58 【问题描述】:在我的文章站点中,一些用户决定使用他们的电子邮件地址而不是用户名 当我尝试使用 RouteData 重定向到一个页面并且 URL 以“.com”结尾时,问题就开始了,例如“example@gmail.com”是一个有效的用户名,所以他的个人页面将是
http://www.mysite/user/example@gmail.com
live example
如您所见,它被重定向到主页并且相对路径变得混乱,因此图像不显示
有人能告诉我为什么浏览器不喜欢以 .com 结尾的 url 中的 routedata 吗? 如果您尝试“.net”或“.org”,它会起作用,这就是“.com”的问题?
【问题讨论】:
【参考方案1】:在 Windows 中,.com 扩展名用于表示一种可执行文件。您的问题被标记为 asp.net - 所以我假设您使用的是 IIS。 IIS 不管理包含可执行扩展名的虚拟目录名称,例如:.vbs
、.com
、.exe
等。
当虚拟目录名称以可执行扩展名(如 .com、.exe、.dll 或 .sh)结尾时,无法使用 Web 浏览器查看此虚拟目录中的文件。如需更多信息,请参阅here。
您的一个选择是简单地将.
替换为个人页面的下划线_
。所以你上面的例子是:http://www.mysite/user/example@gmail_com
【讨论】:
以上是关于为啥浏览器 URL 不能以 .com 结尾?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我可以浏览microsoft.com 扔掉我的浏览器却不能telnet?
为啥request.setCharacterEncoding解决中文乱码只限于表单是post的情况,对get不管用?
ftp服务器只能以http://f方式从浏览器里进去,而不能以ftp://方式进去,为啥?
为啥在 Web 浏览器中工作的 url 没有在 UIImageview 中加载
为啥 tlstest.paypal.com 可以在浏览器中运行,但不能从我的 PHP 代码中运行(对 Paypal IPN 有用)?