您如何称呼URL的整个第一部分?


78

如果我有一个网址,例如:

http://www.example.com:9090/test.html

然后我知道这www.example.com是主机名,但是您叫http://www.example.com:9090什么呢?是否有某种既定名称?


2
我喜欢这个答案中图片,将各个部分可视化。
捷克学'17

Answers:


29

我不知道何时使用该方案的名称,但是带有端口的主机名被统称为Authority。。一个很好的解释here


2
实际上,根据该链接,这将是“方案和权限”。
克里斯·卡伊拉

78

它被称为起源


更笼统地说,这是URL的不同部分,如所述window.location。(因此至少要根据Javascript的调用方式)

protocol://username:password@hostname:port/pathname?search#hash
-----------------------------href------------------------------
                             -----host----
-----------      origin      -------------
  • protocol -URL的协议方案,包括最后的“:”
  • hostname -域名
  • port -端口号
  • pathname -- /pathname
  • search -- ?parameters
  • hash -- #fragment_identifier
  • username -域名前指定的用户名
  • password -域名前指定的密码
  • href -整个网址
  • origin -- protocol://hostname:port
  • host -- hostname:port

正式定义在RFC 6454第4节中。


2
起源似乎非常特定于浏览器上下文。这个术语使用范围更广吗?还有更多参考资料吗?
Dima Tisnek '16

URI只是一个字符串,通过阅读所有这些答案,我感到不同的用例将具有不同的名称。我从那里得到了这个答案的名称window.location,所以这些是“浏览器上下文”的名称。有关其他用途,请参见其他答案。
d4nyll '16

感谢慷慨的陌生人:p
d4nyll 16-10-12

起源之后你怎么称呼一切?
乔纳

不确定是否有名称,但是无论如何这应该是一个不同的问题:p
d4nyll 16-10-13

28
  • http://-协议
  • www-服务器名称(子域)
  • 示例-二级域(SLD)
  • com-顶级域(TLD)
  • 9090-端口号
  • /test.html-路径

保存协议后,您可以将“ www.example.com”作为主机名,或者更确切地说,将其称为“完全限定域名”。

抛开“ 9090”,我个人称其为主机,因为通常这就是您在HTTP请求中作为“主机”标头得到的内容。类似于“主持人:www.example.com:9090”。在PHP中,它将存储在$_SERVER“ HTTP_HOST”或“ SERVER_NAME”下的变量中。在JavaScript中,它将作为document.location.host

我不知道一旦你在'http://'中折腾你该怎么称呼:(


感谢Richard,这很有帮助。有关更完整的列表,请参阅mattcutts.com/blog/seo-glossary-url-definitions
Ryan

14

RFC 3986详细介绍了语法组件。您引用的部分将是方案http)和权限www.example.com:9090)。


我们如何将该术语与中给定的术语合并windows.location?我很困惑!我们可以。例如,把它protocolscheme
Aónio



-1

您可以在Wikipedia上了解URL的每个部分。您会发现那里http是一个协议名称,:9090确定应该在端口#9090等上建立连接。


-2

这意味着托管example.com的HTTP服务器正在使用该端口9090来处理HTTP请求,这是对浏览器的指令,它应在端口9090上连接该服务器,而不是在未指定端口的情况下通常通过80进行连接


1
@jnicklas并不是这样问的,我确定他知道什么是端口以及如何更改它。他想知道如何命名URI的确切部分(可能以该名称存储在数据库中)
llamerr
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.