绝对URL表现为相对URL的问题

4
当我有一个链接,如http://site.com,点击它可以正常跳转到该网址。
但是当链接只是www.site.com时,它会将此URL添加到父网站中,因此无法跳转到该URL。
因此,单击<a href='www.site.com'>site</a> 会在浏览器任务栏中创建这个: www.parentsite.com/www.site.com
我怎样才能在不使用preg_replace的情况下解决这个问题? 我对这个还比较新。

1
你需要包括 http://www - Don
1个回答

7
因为www.parentsite.com被解释为相对地址,例如index.htm,而不是由协议、主机名和路径组成的绝对URL。
当我在example.com的首页时...
  • contact.html是相对地址,最终的绝对地址为http://example.com/contact.html(浏览器会将此作为内部计算)
  • images/是相对地址,结果为http://example.com/images/
  • www.xyz.com的结果为http://example.com/www.xyz.com
您需要添加协议前缀(例如http://),以使浏览器理解您的意思并相应地处理。
这里是一个MSDN上关于该问题的背景信息文章的链接:点击此处

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接