URL 应该像这样
protocal://username@hostname:port/path/filename?query#fragment
现实中打开的网页可能是这样的
http://news.163.com/15/1229/19/BC1D4ON600014N4Q.html
http服务的默认端口是80, 如果是默认端口就不用指定了。
path是相对于服务器文档根目录的。而不是服务器上的文件系统的根目录。
因为对于服务器来讲, 不可能将整个文件系统展现给公众的,所以只将某个目录下的
内容展现给公众,对于公众来说,这个就好像文件系统的根目录一样。
filename 有时候文件名也别省略。
比如你访问 https://www.baidu.com/ 并没有指定文件名,服务器会指定默认文件展现给你。
fragment 可能是 html的一个锚,html的一个标签,如
<a name='test_f'> comments</a>
相对url 会继承父文档的主机名和路径。
如:
<a href="faq.html"> </a>
相对url有个优点,是便于移植,而不担心文档内部关系破坏。